gpt4 book ai didi

c# - 使用 FromQuery 时是否可以将类对象默认为 null

转载 作者:行者123 更新时间:2023-12-02 00:18:34 25 4
gpt4 key购买 nike

public class Filter
{
public string Property1 { get;set; }
public string Property2 { get;set; }
}
[HttpGet("/search")]
public IActionResult Search([FromQuery] Filter filter)
{
...
}

我想知道如果我要调用 /search 是否可以将 filter 的值默认为 null。

现在 filter 不会为空,但它的每个属性都会。这可能是因为模型绑定(bind)正在创建该类的默认实例,以使用它在查询字符串中找到的属性填充它。

我正在使用 dotnet core 2.2

最佳答案

据我所知,这是不可能的,因为模型绑定(bind)将创建一个默认的空实例 Filter 类,并尝试从查询字符串参数填充其属性。您可以使用模型验证(例如 [Required] 属性)来确保正确填充 Filter 对象。另一种更手动的方法可能是创建一个 IsEmpty() 方法并检查每个属性是否有值,然后使用该方法确定 Filter 对象是否实际上包含数据。

关于c# - 使用 FromQuery 时是否可以将类对象默认为 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56236544/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com