Serialization ASP.NET MVC API中的自定义序列化

Serialization ASP.NET MVC API中的自定义序列化,serialization,asp.net-mvc-4,Serialization,Asp.net Mvc 4,我有一个类似这样的类: public class Position { public int X { get; set; } public int Y { get; set; } } 假设数据契约与此相似: [DataContract] public class MyModel { [DataMember(name="position")] public Position Position { get; set; } } 我想使用如下值将此职位值发送给客户机

我有一个类似这样的类:

public class Position 
{
    public int X { get; set; }
    public int Y { get; set; }
}
假设数据契约与此相似:

[DataContract]
public class MyModel
{
    [DataMember(name="position")]
    public Position Position { get; set; }
}
我想使用如下值将此职位值发送给客户机,并从客户机发送

public class Position 
{
    public int X { get; set; }
    public int Y { get; set; }
}
JSON:
{“位置”:“1,2”}

XML:
1,2

我只想补充一点,我不是想这么做:

JSON:
{“位置”:{“数据”:“1,2”}

XML:
1,2

如果可能的话,我不希望将其注入整个序列化管道。我让它在web控制器上工作,但是API控制器被证明有点棘手。最好的方法是什么

谢谢

更新


在本例中,我决定按原样使用位置字段(例如,
{“position”:{“X”:1,“Y”:2}
),但如果遇到解决方案,我将保持打开状态并进行更新。

您可以使用视图模型:

[DataContract]
public class PositionViewModel
{
    [DataMember(name = "position")]
    public string Position { get; set; }
}

然后在控制器操作中映射您的
位置
域模型和视图模型(如果需要)。

您是如何使其在标准MVC控制器上工作的?