MVC06
1.校验机制
我们可以在Model中使用属性进行校验
using System;
using System.ComponentModel.DataAnnotations;
using System.Data.Entity; namespace MvcMovie.Models
{
public class Movie
{
public int ID { get; set; }
[StringLength(,MinimumLength = )]
[Required]
public string Title { get; set; } // 添加命名空间
// Display属性,修改属性名称
[Display(Name ="Release Date")]
// 该属性值类型限定
[DataType(DataType.Date)]
// 限定格式
[DisplayFormat(DataFormatString ="{0:yyyy-MM-dd}",ApplyFormatInEditMode = true)]
public DateTime ReleaseDate { get; set; }
public string Genre { get; set; }
[Range(,)]
[DataType(DataType.Currency)]
public decimal Price { get; set; }
} public class MovieDBContext : DbContext
{
public DbSet<Movie> Movies { get; set; }
}
}
坑:https://blog.csdn.net/yzamo/article/details/38901141
这里做的校验是客户端进行的校验,校验失败的数据不会被提交到服务器
2.服务器端校验
当浏览器禁用js无法在客户端进行校验时,需要进行服务端的校验。
当我们主动禁用浏览器js脚本执行后,也能够进行服务器端的校验
3.C#处理异常
使用try-catch语句处理异常
int x = ;
try{
int y = /;
}
catch(NullReferenceException e)
{
Console.WriteLine(e.Message);
throw;
}
catch(DivideByZeroException e)
{
Console.WriteLine(e.Message);
throw;
}
finally { Console.log("you will see this msg finally") }
catch的错误类型从上到下依次匹配。
模糊匹配请使用Exception
Exception消耗较大,比较占用资源
MVC06的更多相关文章
- 快速入门系列--MVC--06视图
到了View的呈现板块,感觉ASP.NET MVC的学习也进入了尾声,还是比较开心的,毕竟也有了不小收获.这部分内容相对比较简单,因为之前还专门学习过如何结合HTML5与MVC框架.前文中提到过,Ac ...
- MVC-06 安装部署
部署网站往往是一件麻烦事,因为在安装部署的过程中,经常有许多步骤要运行,对于许多不太熟悉IIS/SQL的新手来说,部署网站编程一件非常困难且危险的事.Visual Studio 2012在ASP.NE ...
- 快速入门系列--MVC--01概述
虽然使用MVC已经不少年,相关技术的学习进行了多次,但是很多技术思路的理解其实都不够深入.其实就在MVC框架中有很多设计模式和设计思路的体现,例如DependencyResolver类就包含我们常见的 ...
- 快速入门系列--MVC--02路由
现在补上URL路由的学习,至于蒋老师自建的MVC小引擎和相关案例就放在论文提交后再实践咯.通过ASP.NET的路由系统,可以完成请求URL与物理文件的分离,其优点是:灵活性.可读性.SEO优化.接下来 ...
- 快速入门系列--MVC--07与HTML5移动开发的结合
现在移动互联网的盛行,跨平台并兼容不同设备的HTML5越来越盛行,很多公司都在将自己过去的非HTML5网站应用渐进式的转化为HTML5应用,使得一套代码可以兼容不同的物理终端设备和浏览器,极大的提高了 ...
随机推荐
- 不同SQL数据库之间表数据的实时同步-发布与订阅
https://blog.csdn.net/rand_muse/article/details/81326879 上述文章中,如果是实时同步,选择 事务发布即可 在快照代理 那里,不需要勾选 运行 ...
- E. Alice and the Unfair Game(推导线段树)
题:https://codeforces.com/contest/1236/problem/E 粗自:https://www.cnblogs.com/YSFAC/p/11715522.html #in ...
- IDEA Maven项目中添加tomcat没有无artifact选项
IntelliJ使用 ##使用IntelliJ IDEA配置web项目时,选择Edit Configration部署Tomcat的Deployment可能会出现以下情况: 导致新手部署过程中摸不着头脑 ...
- The Pomodoro Technique
目录 简介 What to solve How to use Some applications 自我总结 结束语 简介 番茄工作法是简单易行的时间管理方法,是由弗朗西斯科·西里洛于1992年创立的一 ...
- 机器学习算法之——LR(未完成)
LR的形式 sklearn中的LR模块sklearn.linear_model.LogisticRegression LR的目标函数 主要的考虑点有三个:处理什么类型的问题?是否正则以及什么正则?求解 ...
- AngularJS中格式化日期为指定格式字符串
var date = $filter('date')(new Date(),'MM/dd/yyyy');
- FPGA 浮点定点数的处理
大纲: 1浮点数的格式指定 2浮点数的运算(加法) 3浮点数加减法器的实现(难于乘除法器的实现) 1. 在FPGA的设计中,浮点数的概念不同于C语言中的定义,这里的浮点数指的是小数点位置会发生变化的 ...
- whatsoever|
ADV (用于名词词组后,强调否定陈述)丝毫,任何,无论什么You use whatsoever after a noun group in order to emphasize a negative ...
- 用Hutton32玩转数字电路(一):逻辑门
最近看到有人用Minecraft里面的红石电路制作出了计算器,还有一篇神文:<基于Minecraft实现的计算机工程>,视频在此,好像还能算浮点数.三角函数.我对红石不是太了解,那能不能用 ...
- iText 中文无法显示
/** * 导出PDF工具com.lowagie.itext测试 * * @param response * @throws IOException * @throws DocumentExcepti ...