1

我在服务器中有以下课程

namespace ServerNameSpace.Models
{
    public class Product
    {
      [Key]
      public int Id { get; set; }
      [Key]
      public string Name { get; set; }
      public IDictionary<string, object> DynamicProperties {get; set;} 
   }
}

我正在尝试从客户端更新上述类的动态属性。在下面的示例中,“制造商”是驻留在服务器中的动态属性。当我尝试使用以下代码更新它时,我收到错误“ServerNameSpace.Models.Product”类型上不存在属性“制造商”。确保仅使用由客户端中的类型定义的属性名称。我在提琴手中看不到对服务器的任何请求。

static async void test()
{
    ODataClient client = new ODataClient("http://localhost.fiddler:58460/");
    Dictionary<string, object> keys = new Dictionary<string, object>()
    {
            {"Id", 123},
            {"Name", "ABC"}
    };
    await client.For("Products").Key(keys).Set(new Dictionary<string,object>()
            {
                {"Manufacturer","Me"}
            }).UpdateEntryAsync();
}

如何更新具有动态属性的对象的属性?任何帮助,将不胜感激。

4

1 回答 1

0

看看我对类似问题的回答,有一个链接指向处理开放属性的示例代码。

Simple.OData.Client 是否支持开放属性?

于 2015-08-10T18:57:05.920 回答