我有一个这样的课程:
[JsonObject(MemberSerialization.OptIn)]
public class Event
{
[JsonProperty]
public Guid EventID;
public string Source;
public UInt64? EventCode;
public DateTime? TimeStamp;
[JsonProperty]
public string SourceType;
...
}
和这样的web api2控制器:
[HttpPost]
public IHttpActionResult Post([FromBody]Event @event) { ... }
我的问题是即使在Post调用中提供了所有Event参数,也会省略Source,EventCode和TimeStamp。由于JsonProperty注释,它们被省略了。但是它们已经到位,因为稍后序列化了对象,其中只有被注释的值应该被序列化。
那么,我如何反序列化所有属性但只有一些序列化?