我有一个用于绑定 QueryString 的模型,它遵循 c# 的命名对话,但 QueryString 位于不同的命名对话中。如何为通过 import copy
class Parent:
def __init__(self, data, params, **kwargs):
self.data = data
self.params = params
def new_data_instance(self, new_data):
new = copy.deepcopy(self.__dict__)
new['data'] = new_data
return self.__class__(**new)
class Child(Parent):
def __init__(self, data, params, other_params, **kwargs):
super(Child, self).__init__(data, params)
self.other_params = other_params
分配的模型属性提供自定义属性名称?
FromUrl
答案 0 :(得分:0)
如果您想从 URL 中获取这样的字段,我建议使用 [FromQuery]
属性,如下所示:
public async Task<HttpResponseMessage> Get([FromQuery] FormatDatabaseRequest data)
那么,这样的网址
https://localhost:43521/myControllerName?type=asdfa&awefflag=asdf
将被正确解析为您的对象:)
答案 1 :(得分:0)
json 与查询字符串无关。我不明白你为什么不喜欢下划线属性,但你可以像这样隐藏它们
public class FormatBaseRequest
{
public string _Type { get; set; }
public string Awef_flag{ get; set; }
}
public class FormatDatabaseRequest:FormatBaseRequest
{
public string Type
{
get { return _Type; }
set { _Type=value ; } //or leave just get
}
public string AwefFlag
{
get { return Awef_flag; }
set { Awef_flag=value ; } //or leave just get
}
}
您可以将它用于查询字符串和 C#