ASP.NET MVC3 Model验证总结

ASP.NET MVC3中的Model是自验证的,这是通过.NET4的System.ComponentModel.DataAnnotations命名空间完成的。 我们要做的只是给Model类的各属性加上对应的验证标记(Attributes)就可以让MVC3框架帮我们完成验证。我以MVC3项目模板自带的登录 做例子讲解Model的验证。 一、启用客户端验证: 客户端验证主要是为了提高用户体验,在网页不回刷的情况下完成验证。 第一步是要在web.config里启用客户端验证,这在MVC3自带的模板项目中已经有了: <add key="ClientValidationEnabled" value="true"/> <add key="UnobtrusiveJavaScriptEnabled" value="true"/> 然后在被验证的View页面上要加入这样两个JavaScript,注意,他们是依赖于JQuery的: <script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script> <script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script> 验证消息的显示有两种,一种是ValidationSummary,它可以显示一份验证消息的汇总,包括从后台Action里返回的消息。 @Html.ValidationSummary(true, "Login was unsuccessful. Please correct the errors and try again.") 另一种是Model中各属性对应HTML控件的验证消息: @Html.ValidationMessageFor(m => m.UserName) 二、在Model中加入验证标记 MVC3项目模板自带的登录模型类如下: public class LogOnModel {     [Required]     [Display(Name = "User name")]     public string UserName { get; set; }     [Required]     [DataType(DataType.Password)]     [Display(Name = "Password")]     public string Password { get; set; }     [Display(Name = "Remember me?")]     public bool RememberMe { get; set; } } 对比普通的C#类,我们发现每个属性上都多了被方括号“[]”包围的标记。其中,[Required]是验证标记的一种,而[Display]、[DataType]则是为了显示对应的HTML控件,这不在本文讨论范围之内。 除了Required,我们还可以在Model中添加其他有用的验证标记。下面是个较完整的列表: Model类中可以添加的验证标记: 1. 必填字段 [Required] public string FirstName { […]

龙生   15 Sep 2015
View Details

解决【FastCGI 进程超过了配置的活动超时时限】

近日,需要满足测试需求,进行大数据并发测试时,报出【HTTP 错误 500.0 – Internal Server Error E:\PHP\php-cgi.exe – FastCGI 进程超过了配置的活动超时时限】 解决办法: IIS7->FastCGI设置->双击"php-cgi.exe"->"活动超时" 项默认是设置为70(秒),改为600(10分钟,此处根据需求设置可以略高~)   from:http://blog.csdn.net/abandonship/article/details/8730524

龙生   14 Sep 2015
View Details

在Mac如何启动MySQL

安装好MySQL服务后(安装步骤可以参考系列经验1)。打开“系统偏好设置”,单击下端的“MySQL”图标。 在“MySQL”对话框中,单击“启动MySQL服务”按钮。 在弹出的窗口中,输入管理员密码,然后单击“好”按钮。 在“MySQL”对话框中,MySQL服务的状态显示为:如下状态表示MySQL服务已经启动。 使用终端登录MySQL:  在Finder的侧边栏中单击“应用程序”,然后在“实用工具”中,双击启动“终端”命令。  在终端中输入添加MySQL路径的命令: PATH="$PATH":/usr/local/mysql/bin  在终端登录到MySQL的命令如下:mysql -u root -p 然后输入密码,如果没有设置密码,直接按enter键。  如果显示的内容如下,即是已经成功登录到MySQL服务。  

龙生   13 Sep 2015
View Details

Mac下启动Apache

1.启动 sudo apachectl -k start 2.重新启动 sudo apachectl -k restart //——————————————————————— 设置Apache容器默认目录(不会命令行的朋友可以参考下面的常用命令) 1.Apache配置文件所在目录 cd /etc/apache2/ 2.修改Apache配置文件 sudo vim httpd.conf 3.查找 DocumentRoot 字符串。“/”为查找定位的意思 /DocumentRoot 4. 将上述查找到的木木修改为自己想要的目录即可。 5.重新启动Apache。 //———————————————————————-- 常用命令:

  //—————————————————————-   若要支持PHP,执行如下: 1. cd /etc/apache2 sudo vim httpd.conf /php #LoadModule php5_module … 2.按字母x,删除#,然后按ESC,输入:wq退出编辑器 cd /etc/ 3.复制一份php.ini sudo cp php.ini.default php.ini 4.重新启动Apache服务器 命令回顾说明:

from:http://www.cnblogs.com/surge/p/4168220.html

龙生   13 Sep 2015
View Details

mac配置nginx+php

系统: OS X Yosemite 10.10.1 系统自带php和php-fpm 路径备注:

  1.安装nginx,我使用了brew

  2.启动php-fpm

  如果报错的话,复制php-fpm.conf.default一份,修改php-fpm.conf的error_log 存放的路径或启动的端口   3.打开nginx.conf 开启php的注释,配置好自己的root

  注意

否则回报文件不存在的。   4.开启nginx

  from:http://www.2cto.com/os/201504/390021.html

龙生   13 Sep 2015
View Details

Nginx配置文件nginx.conf中文详解

#定义Nginx运行的用户和用户组 user www www; #nginx进程数,建议设置为等于CPU总核心数。 worker_processes 8; #全局错误日志定义类型,[ debug | info | notice | warn | error | crit ] error_log /var/log/nginx/error.log info; #进程文件 pid /var/run/nginx.pid; #一个nginx进程打开的最多文件描述符数目,理论值应该是最多打开文件数(系统的值ulimit -n)与nginx进程数相除,但是nginx分配请求并不均匀,所以建议与ulimit -n的值保持一致。 worker_rlimit_nofile 65535; #工作模式与连接数上限 events { #参考事件模型,use [ kqueue | rtsig | epoll | /dev/poll | select | poll ]; epoll模型是Linux 2.6以上版本内核中的高性能网络I/O模型,如果跑在FreeBSD上面,就用kqueue模型。 use epoll; #单个进程最大连接数(最大连接数=连接数*进程数) worker_connections 65535; } #设定http服务器 http { include mime.types; #文件扩展名与文件类型映射表 default_type application/octet-stream; #默认文件类型 #charset utf-8; #默认编码 server_names_hash_bucket_size 128; #服务器名字的hash表大小 client_header_buffer_size 32k; #上传文件大小限制 large_client_header_buffers 4 64k; #设定请求缓 client_max_body_size 8m; #设定请求缓 sendfile on; #开启高效文件传输模式,sendfile指令指定nginx是否调用sendfile函数来输出文件,对于普通应用设为 on,如果用来进行下载等应用磁盘IO重负载应用,可设置为off,以平衡磁盘与网络I/O处理速度,降低系统的负载。注意:如果图片显示不正常把这个改成off。 autoindex on; #开启目录列表访问,合适下载服务器,默认关闭。 […]

龙生   13 Sep 2015
View Details

Mac下编译php,Configure Error: Please specify the install prefix of iconv with --with-iconv=

Configure Error: Please specify the install prefix of iconv with --with-iconv=<DIR> 解决: ./configure --without-iconv

龙生   12 Sep 2015
View Details

Mac OS X下重启apache

打开终端 重启apache:sudo /usr/sbin/apachectl restart 关闭apache:sudo /usr/sbin/apachectl stop 开启apache:sudo /usr/sbin/apachectl start   from:http://blog.csdn.net/nightelve/article/details/7935795

龙生   12 Sep 2015
View Details

MAC OSX 10.10 下安装PHP环境

Apache和PHP已经在系统里面预装好了,只要你开启即可使用。这篇文章给大家介绍如何开启并设置好PHP开发环境。 1.开启默认Apache服务 打开终端命令行,输入如下命令就会开启Apache了.然后输入top命令查看进程是否含有http。

  2.修改Apache配置文件 在Finder右键点击“前往文件夹”后输入“/etc/apache2/ ”然后打开httpd.conf。我们要修改开启PHP组件和虚拟目录。 去掉在168、169行的#号

  211行前面加上#号

  修改默认目录

  虚拟目录,修改文件/etc/apache2/extra/httpd-vhosts.conf

  3.修改HOSTS文件 在Finder右键点击“前往文件夹”后输入“/etc ”然后打开hosts。

  4.安装MYSQL 到官网下载:http://dev.mysql.com/downloads/mysql/ 选DMG格式的就好了。他会帮你一键安装好。 复制出一份。php.ini

  创建mysql socket(不设置这个无法连接phpmyadmin)

  然后修改php.ini中的内容(原因是连接时候php默认去找/var/mysql/mysql.sock了,但是MAC版本的MYSQL改动了文件的位置,放在/tmp下了。)

  设置别名和密码

  from:http://jinzhe.net/post/32.html

龙生   12 Sep 2015
View Details

在Mac上安装Nginx

1. 安装PCRE Download latest PCRE. After download go to download directory from terminal.   $ cd ~/Download $ tar xvzf pcre-8.12.tar.gz $ cd pcre-8.12 $ sudo ./configure --prefix=/usr/local $ sudo make $ sudo install   2. 安装Nginx Download latest nginx from Nginx.org. After download, let install   $ cd ~/Download $ tar xvzf nginx-1.0.0.tar.gz $ cd nginx-1.0.0 $ sudo ./configure --prefix=/usr/local --with-http_ssl_module --with-ld-opt="-L /usr/local/lib" $ sudo make $ sudo make install   3. 运行Nginx $ cd /usr/local/sbin $ sudo ./nginx 访问http://localhost   4. 关闭Nginx $ cd /usr/local/sbin $ sudo […]

龙生   12 Sep 2015
View Details
1 285 286 287 418