【ASP.Net Core中使用枚举类而不是枚举的方法】教程文章相关的互联网学习教程文章

[asp.net mvc 奇淫巧技] 03 - 枚举特性扩展解决枚举命名问题和支持HtmlHelper【代码】【图】

一、需求我们在开发中经常会遇到一些枚举,而且这些枚举类型可能会在表单中的下拉中,或者单选按钮中会用到等。 这样用是没问题的,但是用过的人都知道一个问题,就是枚举的命名问题,当然有很多人枚举直接中文命名,我是不推荐这种命名规则,因为实在不够友好。那有没有可以不用中文命名,而且可以显示中文的方法呢。答案是肯定的。 二、特性解决枚举命名问题那就是用特性解决命名问题,这样的话既可以枚举用英文命名,显示又可以...

ASP.Net Core中使用枚举类而不是枚举的方法【图】

前言: 我相信大家在编写代码时经常会遇到各种状态值,而且为了避免硬编码和代码中出现魔法数,通常我们都会定义一个枚举,来表示各种状态值,直到我看到Java中这样使用枚举,我再想C# 中可不可以这样写,今天就分享一下我的感悟。 一、通常我们是这样使用枚举的 (1)switch中使用枚举public enum EmployeeType{Manager,Servant,AssistantToTheRegionalManager} public class Employee{public EmployeeType Type { get; set; }pub...

.NET获取枚举DescriptionAttribute描述信息性能改进的多种方法

一. DescriptionAttribute的普通使用方式1.1 使用示例DescriptionAttribute特性可以用到很多地方,比较常见的就是枚举,通过获取枚举上定义的描述信息在UI上显示,一个简单的枚举定义:public enum EnumGender { None, [System.ComponentModel.Description("男")] Male, [System.ComponentModel.Description("女")] Female, Other, }   本文不讨论DescriptionAttribute的其他应用场景,也不关注多语言的实现,只单纯的研究下获取...

.NET中的枚举用法浅析

本文简单分析了.NET中的枚举用法。分享给大家供大家参考。具体分析如下: 我理解的枚举就是编程中约定的一个“可选值”;例如QQ的在线状态,分别有 在线,Q我吧,隐身,忙碌等等。。。我觉得这就是一个枚举。 1.普通枚举 1) 实例代码如下:public enum UserState { QMe, OnLine, OffLine //后面省略 } ps:像上边的枚举,可以单独写在一个CS文件中。 2)普通枚举的性质 1. 互斥性 2. 每一个值都有一个数值来表示 3. 枚...

MVC4 基础 枚举生成 DropDownList 实用技巧

在MVC开发中我们常常用到枚举类型,通常枚举类型在使用中是是用DropDownList,每次转换不是什么好办法。 通过扩展加以实现此功能。 代码如下:public static class ExSelectListItem { public static List<SelectListItem> ToSelectListItem(this Enum valueEnum) { return (from int value in Enum.GetValues(valueEnum.GetType()) select new SelectListItem ...

asp.net 枚举文件里面的数字绑定到DropDownList里面去

代码如下:public class AppEnum { public enum PointLogType : int { /// <summary> /// Email确认 /// </summary> [Description("Email确认")] Recruit = 1, //新客户激活+ /// <summary> /// 老客户回馈 /// </summary> [Description("老客户回馈")] Veteran = 2, //老客户购物历史回复 /// <summary> /// 生成订单 /// </summary> [Description("生成订单")] CreateOrder = 3, //下订单- /// <summary> /// 作废订单 /// </summ...

【2020.04.03】asp.net core 3.1 枚举类型模型绑定问题【图】

问题:还是升级到3.1的问题,直接上图,现象如下: 我们的系统里,有一些查询条件是从枚举转化过来的,但是为了统一,界面渲染的时候追加了一个“请选择”,value为-999,这种场景很多很多,可以看到-999不在枚举的定义里,只要我以当前选择状态提交请求,后端全局的modal valid就会报错,说-999不是有效的值。 这个情况在我之前2.1里面不存在的,升级到3.1就这样了。 调查:我同事也在看,居然在github里有人提过这样的issue:h...

【2020.04.03】asp.net core 3.1 枚举类型模型绑定问题【图】

问题:还是升级到3.1的问题,直接上图,现象如下: 我们的系统里,有一些查询条件是从枚举转化过来的,但是为了统一,界面渲染的时候追加了一个“请选择”,value为-999,这种场景很多很多,可以看到-999不在枚举的定义里,只要我以当前选择状态提交请求,后端全局的modal valid就会报错,说-999不是有效的值。 这个情况在我之前2.1里面不存在的,升级到3.1就这样了。 调查:我同事也在看,居然在github里有人提过这样的issue:h...

在ASP.NET Core下拉列表中显示部分枚举列表【代码】

假设我有一个这样的枚举:public enum ContactPhoneType {[Display(Name = "")]None = 0,[Display(Name = "Home Phone")]HomePhone = 1,[Display(Name = "Cell/Mobile Phone")]CellMobile = 2,[Display(Name = "Work Phone")]Work = 3,[Display(Name = "Family Member")]FamilyMember = 4,[Display(Name = "Fax Number")]Fax = 5,[Display(Name = "Other")]Other = 6, }我只想显示列表中的前6个.如何隐藏最后一个? 为了显示所有项...

ASP.NET MVC 中枚举生成下拉框【代码】【图】

最近公司在开发财务系统,在工作中遇到不少的地方需要下拉框。 但是枚举框中数据的内容又来自枚举。 枚举代码如下:1 public class EnumDemo2 {3 4 public enum Value {5 First=1,6 Second=27 }8 public enum Name9 { 10 我是第一 = 1, 11 我是第二 = 2 12 } 13 14 15 16 }View Code 我一看还挺简单。 于是第一次是这样的: ...

c# – ASP.NET MVC with Entity Framework中仅支持原始类型或枚举类型【代码】

我正在创建一个示例ASP.NET MVC Web应用程序,我正在遵循数据库的代码优先方法.我想创建产品表和事务表,另外我想通过迁移包含一些示例数据,但是当我尝试执行Update-Database时,我收到了标题中提到的错误消息.我确切地知道错误发生的原因,那是因为我使用List< Product>,如下所示.但是,我不知道如何解决问题,而交易应包括一个或多个产品.我的代码段可以在下面找到.public class Product {public int ProductID { get; set; }public st...

我们可以用c#在asp.net中创建枚举多语言吗【代码】

我正在使用多语言网站,并且我使用了一些枚举,现在我们可以根据多语言制作这些枚举? 我的枚举结构是public enum abc {[Description{"multilingual text"}]StatucActive = 1 }像这样.我想在描述中写多语言文字.解决方法:不,我们不能使用枚举作为多语言,但我有一个替代选项,使用资源文件,它在某些情况下像枚举一样工作. 请尝试资源文件,它将解决您的问题….

c# – 如何从ASP.NET MVC属性中获取枚举值?【代码】

在我的ViewModel中,我有一个属性,可以为我的表单的下拉菜单创建一个枚举.public enum Colors{[Description("Dark Red")]DarkRed = 0,[Description("Orange")]Orange = 1,[Description("Blue")]Blue = 2}我的助手回归:<select id="ddlColor"><option value="DarkRed">Dark Red</option><option value="Orange">Orange</option><option value="Blue">Blue</option> </select>但是,当我在模型中调用属性时,我只获取名称而不是值,例如...