Вопрос начинающего. Что нужно: послать запрос из внешнего (Internet) bpm'a во внутренний с ИНН клиента на предмет наличия такового. Делаю это через OData. Код задания-сценария:
/*static readonly XNamespace ds = "http://schemas.microsoft.com/ado/2007/08/dataservices";
static readonly XNamespace dsmd = "http://schemas.microsoft.com/ado/2007/08/dataservices/metadata";
static readonly XNamespace atom = "http://www.w3.org/2005/Atom";*/
bool flag = false;
string requestUri = "https://server/0//ServiceModel/EntityDataService.svc/"+
"ContactCollection?$filter= INN eq '1111111111'&$select=INN";
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
var request = HttpWebRequest.Create(requestUri) as HttpWebRequest;
request.Method = "GET";
request.Credentials = new NetworkCredential("login", "password");
using (var response = request.GetResponse())
{
XDocument xmlDoc = XDocument.Load(response.GetResponseStream());
var contacts = xmlDoc.Descendants("entry").Select(x => new
{
INN = x.Element("content").Element("m:properties").
Element("d:INN").Value
});
if (contacts.Count() > 0)
{
flag = true;
}
}
Set("flag",flag);
return true;
Исходящий параметр flag добавила, библиотеки System.Net, System.Linq, System.Xml, System.Xml.Linq подключила. Максимально захардкодила. В Visual Studio работает, а при переносе в bpm - нет. К логам доступа пока нет. Схема процесса в bpm