Невозможно преобразовать тип System.Dynamic.ExpandoObject - проблема с ImpromptuInterface

Я получаю следующую ошибку:

      Microsoft.CSharp.RuntimeBinder.RuntimeBinderException: 'Cannot convert type 'System.Dynamic.ExpandoObject' to 'IMyApiInterface''

При попытке заброса утки:

      internal static T Create<T>()
{
    dynamic api = new ExpandoObject();
    var clientType = typeof(T);
    return Impromptu.ActLike((T)api, clientType);
}

Интерфейс:

      public interface IMyApiInterface
{
    [ActionApi("{field1}")]
    MyObject Get(string field1);

    [ActionApi("", ActionType.Post)]
    MyObject Post([RequestBody] MyObject obj);

    [ActionApi("", ActionType.Put)]
    MyObject Put([RequestBody] MyObject obj);
}

Телефонный код:

      _apiInstance.Api<IMyApiInterface>().Post(myObject)

... где _apiInstance.Api звонки на статический Create<T> метод, показанный выше.

Использование ImpromptuInterface.dll v7.0.1 (последняя версия от NuGet).

0 ответов

Другие вопросы по тегам