C# 使用Nancy绑定到自定义属性

C# 使用Nancy绑定到自定义属性,c#,json,binding,nancy,C#,Json,Binding,Nancy,我有一个具有此属性的类: public string FeatureString { get; set; } 但是,我在JSON中收到: "feature_string":"someText" 由于下划线,名称不匹配,因此未绑定此属性。 赋予它一个属性: [JsonProperty(PropertyName = "feature_string")] 似乎没用 是否有,如果有,如何与Nancy绑定到一个名称不同于JSON的属性 谢谢。我不认为这是现成的支持。 我可以想到两个选择: 使用请

我有一个具有此属性的类:

public string FeatureString { get; set; }
但是,我在JSON中收到:

"feature_string":"someText"
由于下划线,名称不匹配,因此未绑定此属性。 赋予它一个属性:

 [JsonProperty(PropertyName = "feature_string")]
似乎没用

是否有,如果有,如何与Nancy绑定到一个名称不同于JSON的属性


谢谢。

我不认为这是现成的支持。 我可以想到两个选择:

  • 使用请求实际具有的结构构建专用请求DTO。Nancy还可以绑定到私有内部类。您的模块可以包含
    功能\u字符串
    作为字段。Nancy也支持字段绑定。当您将数据绑定到内部请求类时,您可以映射到实际对象,例如使用Automapper。您仍然需要一个与JSON具有相同结构的对象,但至少可以通过这种方式将其隐藏一点

  • 下面是一个动态模型绑定器,它允许将传入的JSON绑定到
    动态
    。再次使用Automapper,您可以从动态对象绑定到实际对象,这应该在没有显式配置的情况下工作。对于
    功能\u字符串
    ,可以定义一个显式映射规则