我使用 ASP.NET Core 最小 API,并尝试让我的视图模型(传入的客户端数据映射到的位置)为其属性使用私有设置器。
但是我发现一旦我让属性具有私有设置器,绑定就会停止工作。 有什么快速解决办法吗?我希望这是一个常见的要求并且有一个简单的解决方案,但我在网上找不到任何东西。
另外,我认为我没有做任何特别的事情:
public void AddRoutes(IEndpointRouteBuilder app)
{
app
.MapPost("api/document/getById", async ([FromBody] GetDocumentRequest request, [FromServices] ISender sender) =>
{
return await sender.Send(request.Query);
})
.WithName("GetDocumentById")
.Produces<DocumentViewModel>(StatusCodes.Status200OK);
}
这里,
GetDocumentRequest
是我的视图模型。
可以用
JsonIncludeAttribute
标记相应的属性:
public class GetDocumentRequest
{
[JsonInclude]
public int Type { get; private set; }
}
请参阅文档的非公共成员和属性访问器部分。