tca*_*vin 6 visual-studio-2010 asp.net-mvc-4 asp.net-web-api
根据标题,我发现我的只读模型属性没有在我的Web API项目中序列化.MVC 4 Web API,VS2010.
我已经看过很多帖子,比如这个stackoverflow问题,说明MVC 4 Web API beta不支持JSON序列化只读属性.但是许多其他参考文献指出最终版本使用的是JSON.NET而不是DataContractJsonSerializer,所以应该解决这个问题.
这个问题是否得到了解决?如果没有,我是否只是为了获得序列化而被迫投入假冒产品?
校正,它也似乎与JSON工作(对不起!),但XML表现出的问题.与之前相同的问题,但在XML序列化的上下文中.
默认的JSON序列化程序现在是Json.NET.因此,readonly属性序列化应该可以工作,而您根本不需要做任何事情.
对于XML,在4.5中我们将此标志添加到DataContractSerializer:
你应该能够写出这样的东西:
config.Formatters.XmlFormatter.SetSerializer(myType, new DataContractSerializer(myType, new DataContractSerializerSettings() { SerializeReadOnlyTypes = true });
Run Code Online (Sandbox Code Playgroud)
将此代码放在一个名为的函数GlobalConfiguration.Configure中Application_Start.默认情况下,这将是WebApiConfig.Register().