我有一个名为UserLanguage的属性,它的类型是Language(我创建的记录),它有三个属性Name,Alpha2Code和Alpha3Code。
在我的请求模型中,我给予属性为Language,但在swagger中,它只会像这样出现
{
"name" : "",
"userlanguage" : {}
}
字符串
我想这样出现:
{
"name" : "",
"userLanguage" : {
"name" : "",
"alpha2Code" : "",
"alpha3Code" : ""
}
}
型
这是语言记录:
public record Language
{
public static readonly Language None = new(string.Empty, string.Empty, string.Empty);
private Language(
string alpha2Code,
string alpha3Code,
string name)
{
Name = name;
Alpha2Code = alpha2Code;
Alpha3Code = alpha3Code;
}
public string Alpha2Code { get; private set; } = string.Empty;
public string Alpha3Code { get; private set; } = string.Empty;
public string? Name { get; private set; }
}
型
这是请求:
public sealed record UserDetailsRequest(
string Name,
Language UserLanguage
);
型
如何在.NET 6 Web API中实现它?
2条答案
按热度按时间tzdcorbm1#
对于带有私有setter的属性,你需要一个过滤器:
字符串
在program.cs中应用它:
型
我这边没问题:
的数据
dsekswqp2#
你可以这样尝试:
字符串