mvc开发过程中遇到的一些小问题修改

删除按钮通常添加一个提示框判断 =》 onclick="returen confirm('确定要删除?');"

显示字段标题的地方,正常要用 Html.LabelFor 的方式,字段标题名称在Model 中用Display来标识

ModelState.IsValid 针对模型参数的判断验证

C#语法中两个问号(??)的运算符是指合并运算符,合并运算符为类型转换定义了一个预设值,以防可空类型的值为Null。

(1)、C#语法中一个个问号(?)的运算符是指:可以为 null 的类型。 

MSDN上面的解释: 

在处理数据库和其他包含不可赋值的元素的数据类型时,将 null 赋值给数值类型或布尔型以及日期类型的功能特别有用。例如,数据库中的布尔型字段可以存储值 true 或 false,或者,该字段也可以未定义。 



(2)、C#语法中两个问号(??)的运算符是指null 合并运算符,合并运算符为类型转换定义了一个预设值,以防可空类型的值为Null。 

MSDN上面的解释: 

?? 运算符称为 null 合并运算符,用于定义可以为 null 值的类型和引用类型的默认值。如果此运算符的左操作数不为 null,则此运算符将返回左操作数(左边表达式);否则当左操作数为 null,返回右操作数(右边表达式)。

部分情况用?做判断使代码更加简洁和清晰
ViewBag.Title =order.Invoice == null ? $"添加" : $"编辑" + $"发票信息";

针对枚举类型对应的值,尽可能直接使用枚举对象去直接显示

错误示例: ProvinceId = order.Address != null ? order.Address.ProvinceId : 0,   
  减少给默认值 为0,因为对于0的具体值 不清晰,造成数据混乱。 
解决方法: 设置ProvinceId  字段为?可空类型,在模型提交验证时加上必填选项,给予限制,这样在提交数据时,就可以通过

在动作请求中,get请求响应的数据,在post请求时,如果页面失败指向的当前页,那么同样要把请求的数据在获取一次传到页面上

原文地址:https://www.cnblogs.com/njccqx/p/9474150.html