1

我有一个问题,当将 JSON 发送到 MVC 控制器上的某个操作时,该操作接受一个包含项目列表的模型。这些项目可以是几个不同的对象,因为它们都是公共抽象类的子类。

有没有办法制作 JSON,以便在反序列化它时,它知道如何将对象转换回正确的类型?

4

1 回答 1

0
    void Main()
{
System.Web.Script.Serialization.JavaScriptSerializer serializer = new   System.Web.Script.Serialization.JavaScriptSerializer();
 MainModel model = new MainModel(){SimpleProperty = "I am simple property",   ComplexProperty = new ComplexProperty(){Foo="test", Bar="data"}};
   var result = serializer.Serialize(model);

}

public class MainModel
  {
      public string SimpleProperty {get;set;}
      public ComplexProperty ComplexProperty {get;set;}
}

 public class ComplexProperty 
  {
public string Bar {get;set;}
public string Foo {get;set;}

  }

序列化的结果如下所示: {"SimpleProperty":"I am simple property","ComplexProperty":{"Bar":"data","Foo":"test"}}

希望有帮助!

于 2012-07-17T14:33:54.053 回答