ASP.NETCore模型绑定在枚举项不可用的情况下拾取默认枚举值。
创始人
2024-09-17 23:01:01
0

可以通过在属性上添加“[Required]”特性,强制模型绑定验证该属性的值是否可用。如果属性是一个枚举,还可以使用“[EnumDataType]”特性来指定该属性应采用哪些枚举值。

示例代码如下:

public enum FruitType
{
    Apple,
    Banana,
    Orange
}

public class Fruit
{
    [Required]
    [EnumDataType(typeof(FruitType))]
    public FruitType Type { get; set; }
    public int Quantity { get; set; }
}

public class HomeController : Controller
{
    public IActionResult Create()
    {
        return View();
    }

    [HttpPost]
    public IActionResult Create(Fruit fruit)
    {
        if (ModelState.IsValid)
        {
            // Process the valid data
            return RedirectToAction(nameof(HomeController.Index));
        }
        return View(fruit);
    }
}

在这个例子中,“Fruit”类有一个“Type”属性,它应该是“FruitType”枚举中的一个值,而不是默认值。如果模型绑定尝试绑定一个不可用的值到“Type”属性上,它会触发一个验证错误,因为该属性已被标记为“Required”并使用了“[EnumDataType]”特性。

相关内容

热门资讯

推荐十款!榆林打锅子技巧(透视... 德普之星有透视辅助吗是一款专注玩家量身打造的游戏记牌类型软件,在德普之星有透视辅助吗这款游戏中我们可...
透视科技!牵手游戏辅助软件(透... 透视科技!牵手游戏辅助软件(透视)hardrock透视工具(高科技教程有挂教程);无需打开直接搜索打...
玩家必看!wepoker辅助是... 玩家必看!wepoker辅助是真的假的(透视)德普之星透视辅助软件下载(玩家教程真的有挂);无需打开...
透视黑科技!威信茶馆透视挂(透... 透视黑科技!威信茶馆透视挂(透视)wepoker新号好一点吗(系统教程有挂方法);无需打开直接搜索薇...
透视免费!四川熊猫辅助软件下载... 您好:四川熊猫辅助软件下载这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户...
总算了解!途游四川小程序脚本辅... 您好:途游四川小程序脚本辅助这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用...
必备科技!友间联盟辅助(透视)... 必备科技!友间联盟辅助(透视)wepoker有辅助插件吗(分享教程有挂头条)>>您好:软件加薇136...
透视有挂!蜜瓜大厅小程序辅助(... 蜜瓜大厅小程序辅助 无需打开直接搜索微信:136704302本司针对手游进行,选择我们的四大理由: ...
玩家必看科普!麻友圈安庆版插件... 玩家必看科普!麻友圈安庆版插件(透视)wepoker免费透视脚本(2026新版教程有挂方式)【无需打...
透视讲解!大当家辅助脚本app... 透视讲解!大当家辅助脚本app(透视)hhpoker有后台操控吗(揭秘攻略有挂存在)hhpoker有...