Это то же самое, что вызывать API из любого другого места.Единственным дополнительным шагом будет объединение дополнительных dll, таких как Newtonsoft.Json
, в основной dll плагина перед регистрацией в инструменте регистрации плагинов или gac на сервере.
Пример кода
var uri = new Uri("<external api url>");
var request = WebRequest.Create(uri);
request.Method = WebRequestMethods.Http.Get;
request.ContentType = "application/json";
try
{
string helloWorldString = "";
using (var response = request.GetResponse())
{
using (var reader = new StreamReader(response.GetResponseStream()))
{
string tmp = reader.ReadToEnd();
helloWorldString = JsonConvert.DeserializeObject<string>(tmp);
Debug.Print("I read this string {0}: ", helloWorldString);
}
}
var entity = (Entity) context.InputParameters["Target"];
if (entity.Contains("description"))
entity.Attributes["description"] = helloWorldString;
else
entity.Attributes.Add("description", helloWorldString);
//Update Sales Order Entity
if (context.Depth == 1)
service.Update(entity);
}
catch (Exception ex)
{
throw;
}