Я заполняю динамический объект и отправляю этот объект в качестве параметра универсальному классу в другой сборке.Обе сборки содержат ссылки на Microsoft.CSharp.dll.
Затем класс, принимающий динамический объект в качестве параметра, содержит логику для преобразования этого динамического объекта в строку json и отправки его во внешний API.Я использую Restclient для отправки запроса.
Например: класс A заполняет динамический объект, а класс B отправляет запрос Api.
dynamic body = new ExpandoObject();
Проблема заключается вЯ получаю Плохой запрос как ответ от внешнего API в классе B, но когда я отправляю запрос из класса A, он работает как ожидалось.
EDIT : я скопировал код классаB и вставить в класс A, где я делаю динамический объект.Странно, но на этот раз я получил ответ об успехе с кодом ниже.
Здесь requestModel - это динамический объект, и я передаю это тело другому классу, как показано ниже:
public class service<Model> where Model : class
{
public Response Invoke(Model requestModel, ApiConfiguration configuration)
{
var client = new RestClient("http://abc");
var restRequest = new RestRequest();
client.Authenticator = new HttpBasicAuthenticator("@12", "M0a981");
restRequest.Method = Method.POST;
restRequest.AddParameter("Application/Json", JsonConvert.SerializeObject(requestModel), ParameterType.RequestBody);
Logger.Instance.WriteLog("Request body : " + JsonConvert.SerializeObject(requestModel));
var tbaResponse = client.Execute(restRequest);
}
}
Есть ли проблемы с передачей динамического объекта между различными сборками.