【问题标题】:WCF rest service to accept dynamic as parameterWCF 休息服务接受动态作为参数
【发布时间】:2012-01-25 14:42:05
【问题描述】:

在我的应用程序中,我正在向服务发送一个 json 对象,而在服务端,我期望一个动态类型的对象

public bool TestService(dynamic entity)
{
    // process
}

当我调试并看到填充的实体时,我无法键入它。知道如何从发送的实体中检索字段

【问题讨论】:

    标签: asp.net wcf rest dynamic


    【解决方案1】:

    我很好奇 - 如果您要发送 JSON 格式的对象,为什么不让您的服务方法接受一个字符串,然后使用 JSON.net 之类的东西将其转换为适当的类型?

    public bool TestService(string entity)
    {
        var myObject = JsonConvert.DeserializeObject<MyObjectType>(entity);
        //do stuff with myObject...
    }
    

    或者您可以将其反序列化为匿名对象:

    public bool TestService(string entity)
    {
        var myAnonymousObject = new { Name = String.Empty, Address = String.Empty };
        var myObject = JsonConvert.DeserializeAnonymousType(entity, myAnonymousObject);
        //do stuff with myObject
    }
    

    我想我不确定为什么你的 JSON 格式的对象需要是动态的。

    【讨论】:

      猜你喜欢
      • 2014-04-25
      • 1970-01-01
      • 1970-01-01
      • 2013-03-25
      • 2011-08-10
      • 2012-06-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多