C# JSON.NET属性的替代解决方案

C# JSON.NET属性的替代解决方案,c#,.net,json,json.net,C#,.net,Json,Json.net,目前在我的模型类中,我有一些JSON.NET属性,如 public class MyModel { [JsonProperty("_anothername")] [JsonConverter(typeof(MyCustomConverter))] public string Name { get; set; } } 有没有其他解决方案不会“污染”我的模型类?合同解析器可能可以工作,但它太重了。我想要这样的东西: var contract = new Js

目前在我的模型类中,我有一些JSON.NET属性,如

public class MyModel
{
     [JsonProperty("_anothername")]
     [JsonConverter(typeof(MyCustomConverter))]
     public string Name { get; set; }     
}
有没有其他解决方案不会“污染”我的模型类?合同解析器可能可以工作,但它太重了。我想要这样的东西:

var contract = new JsonContract<MyModel>();
contract.Property(m => m.Name)
        .HasAlias("_anothername")
        .HasConverter<MyCustomConverter>();
JsonConvert.SerializeObject(myModelInstance, contract);
var合同=新的JsonContract();
contract.Property(m=>m.Name)
.HasAlias(“\u其他名称”)
.hascoverter();
SerializeObject(myModelInstance,contract);
理想情况下,模型类对JSON.NET一无所知,项目不应该有JSON.NET引用

编辑:也许其他一些JSON库可以工作,但我不想涉及其他库,因为JSON.NET在这个项目中被广泛使用


更新:看来合同解析器是实现这一点的标准方法,我发现这与我的期望非常接近。稍后我将尝试编写自己的实现。

契约解析器可能可以工作,但它太重了。我想要这样的东西
,您认为如何实现这一点?如果有内置的东西,你可能已经用过了。