具有url-formencoded的模型属性自定义名称

时间:2018-12-26 18:34:20

标签: c# asp.net-web-api serialization asp.net-core asp.net-core-mvc

我在webapi(.net核心2.1)中的绑定存在问题。 通常,当我使用xml / json时,可以向模型道具添加属性(通过XmlElement或JsonProperty)。 但是,我有一个使用application / x-www-form-urlencoded作为媒体类型的项目,因此,仅当参数名称与属性名称匹配时才能使用模型(幸运的是,不区分大小写)。您能否建议是否有实现这种映射的方法?

1 个答案:

答案 0 :(得分:4)

您可以使用FromForm属性注释模型属性,该属性具有属性Name,该属性可用于指定绑定时使用的名称。这是一个简单的示例:

public class SomeModel
{
    [FromForm(Name = "SomePropertyNameToUse")]
    public string SomeProperty { get; set; }

    [FromForm(Name = "SomeOtherPropertyNameToUse")]
    public string SomeOtherProperty { get; set; }
}