ASP。网络核心MVC怎么对枚举进行绑定

  介绍

本篇文章给大家分享的是有关ASP。网络核心MVC怎么对枚举进行绑定,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

我们首先给出要绑定的枚举类。

那么此时我们的视图代码就演变成了如下所示。

@ {   布局=零;   }      & lt; !DOCTYPE html>      @using WebApplication1.Enums   & lt; html>   & lt; head>   & lt;元名称=皏iewport"内容=翱矶?device-width"/比;   & lt; title> Index   & lt;/head>   & lt; body>   @Html.GetEnumSelectList (typeof(语言)   & lt;/body>   & lt;/html>

 ASP。净核心MVC怎么对枚举进行绑定

哦,狗屎,返回的是SelectListItem,看来没用对,最终尝试搞出了下面的方法

@ {   布局=零;   }   & lt; !DOCTYPE html>      @using WebApplication1.Enums   & lt; html>   & lt; head>   & lt;元名称=皏iewport"内容=翱矶?device-width"/比;   & lt; title> Index   & lt;/head>   & lt; body>   & lt;选择asp-items=癅Html.GetEnumSelectList (typeof(语言))“祝辞& lt;/select>   & lt;/body>   & lt;/html>

 ASP。净核心MVC怎么对枚举进行绑定

这才是我们最终想要的,我们完全不需要借助强类型视图来实现,有专门针对枚举的方法,简单粗暴,但是要记住千万别再选择上加上asp-for=?“选项,否则会出现如下错误,这个没在研究了,估计和强类型视图绑定有关

 ASP。网络核心MVC怎么对枚举进行绑定”>,</p> <p>虽然上述是。NET核心提供给我们最好的方案,确实很好,但是我们实际要的效果不是这样,我们来举一个实际场景,比如如下枚举类。</p> <pre类=八?csharp;”>公共enum PayStatus
  {
  创建、
  WaitPay,
  WaitConfirm,
  成功了,
  失败了,
  NoPay
  }</pre> <p>如上显示的是支付的若干状态,当在视图上显示时总不能实现创建、WaitPay, WaitConfirm等吧,谁懂呢,我们想要的是该枚举的描述信息,结果就演变成了如下这样。</p> <pre class=   {   (显示(Name=靶陆ā?)   创建、   (显示(Name=暗却Ц丁?)   WaitPay,   (显示(Name=暗却Ц度啡稀?)   WaitConfirm,   (显示(Name=爸Ц冻晒Α?)   成功了,   (显示(Name=爸Ц妒О堋?)   失败了,   (显示(Name=拔扌柚Ц丁?)   NoPay   }

此时我们依然借助上述方法来实现,如下只是修改一下枚举类型即可。

ASP。网络核心MVC怎么对枚举进行绑定