天天看点

MVC3开发常常遇到的问题及常常使用到的代码片段

1、加密可用:

 2、在Model里限制数字大小范围:

 3、具有相同关键键值的字段设定方法(常常用在更新数据的时候):

解决的是象下面的情形:

MVC3开发常常遇到的问题及常常使用到的代码片段

4、Model中“邮箱、手机、密码“字段属性验证方法:

 5、在Controller的获取参数为Guid类型时,是无法获取的,只能采用string类型的然后再进行转换为Guid类型的,方法如下:

 6、如果在Get 的Controller里向View页面转值时,那么在HttpPost的Controller里一定要也要有逻辑表达,不然view出错时可能会丢失值,然后造成错误的出现。

 7、在View页面里ViewBag的动态传值方法:

 8、使用aspnetdb数据库时不需要安装sqlexpress版本而使用本地数据库怎么?

 9、在View使用RenderAction注意事项:

要使用大括号和分号如:

 10、使用ViewBag时有时候字符串会被编码,比如“<”被编码成:<解决办法如下:

只要在View页利用Html.Raw就行了

有些地方也许要这样使用:

判断语句中使用是: 

11、在li中选择一行时显示底色的方法:

<a href="http://docs.jquery.com/UI/Selectable">http://docs.jquery.com/UI/Selectable</a>

12、下拉菜单text自定义显示

要实现的样式如下图:

MVC3开发常常遇到的问题及常常使用到的代码片段

 13、多选框的另一种形式

MVC3开发常常遇到的问题及常常使用到的代码片段

相当关键的一处是:

它一定要放在页面的下面,不然不会起反映的

 14、在Model里设定时间的显示格式方法

 15、jquery给文本框赋值

 16、让input没有缓存下拉值并只允许输入数字,其它字符无法输入

 17、清空input的内容的jquery写法

 18、等待几毫秒后再进行下面的操作

 19、把字符型日期转换为日期型的方法

Convert.ToDateTime 方法 (String) 将日期和时间的指定字符串表示形式转换为等效的日期和时间值。

DateTime.Parse 方法 (String) 将日期和时间的指定字符串表示形式转换为其等效的 DateTime。

 20、把Decimal类型保留 两位小数

 21、怎样解决:未找到路径“……”的控制器或该控制器未实现 IController?

就是要加上new{area=""}

 22、当MVC添加区域的时候,如果在最外围的公共层_Layout.cshtml有链接到Area内的actionName和controllerName那么要这样写:

其中User指的是Area内的其中一个区域,有时候Area内可能会有多个区域,比如:Mana、User、Pub等

23、Jquery把字符型数字转化为可以比较的数字类型

使用parseInt

 24、不允许使用浏览器的后退按钮(在有购物车的时候特别有用)

在Global.asax里添加如下代码:

 25、怎样模糊查询当天全部日期包括当天的小时/秒/毫秒

方法如下:

 26、怎么处理MVC3中出现的“未将对象引用设置到对象的实例”所引发的异常?

在处理显示类时注意要用:@Html.DisplayFor(item=&gt;item.User) 而不要直接使用:@Model.User

如果这样使用,当Model为空时就会引发上述异常!

27、Splic用法

 28、MVC3中删除“主表”其相关的“从表”也跟着删除或者更新的方法是:

 29、点击多行中一个&lt;td&gt;里的内容可以下拉菜单

MVC3开发常常遇到的问题及常常使用到的代码片段

 30、对于集合中重复的项,要过滤重复项,必须要配合Select命令:Distinct()才起作用。

 31、根据不同的值显示不同的链接信息的方法

可以使用Url:

然后再使用自定义的@helper函数来判断LinkText应该怎么显示

32、由于注册两个相同的控制器而出现无法找到匹配的控制的错误,如:

解决办法是“ManaAreaRegistration.cs”和“Global.asax”分别加上Router的命名空间即可,如下:

在根下加:new string[]{"Proweb.Controllers"}

在Area的Mana下加:new string[] {"Proweb.Areas.Mana.Controllers"}

 33、Include在Linq To Entity中的作用

请看如下例子:

一个“风格流派”包含多个“专辑”,点击其中一个流派则可以返回此流派我多个列表

MVC3开发常常遇到的问题及常常使用到的代码片段

Models应该加List&lt;Album&gt;

MVC3开发常常遇到的问题及常常使用到的代码片段

 34、获取id值的方法

如果url是 /home/index?id=3 直接Request就ok。

但是如果路由设定为:{controller}/{action}/{id}

url是 /home/index/3

这时想在页面View中获取参数id的值,该怎么获取? 

查了下资料好多人都利用Action获取到参数值后,用Viewdata传到View中

例如

Controlers中的phonelist这样定义

public ActionResult phonelist(int id)

{

ViewData["id"] = id;

return View();

}

其实,没有必要,只要在view中这样获取就可以:

&lt;%=Html.ViewContext.RouteData.Values["id"]%&gt;

就算没有id的参数也不会报错。 

同样:

&lt;%=Request.RequestContext.RouteData.Values["id"] %&gt;和

&lt;%=Html.ViewContext.RouteData.Route.GetRouteData(Html.ViewContext.HttpContext).Values["id"]%&gt;也可以取到。

在用户控件中是无法直接访问到RouteData,RouteData是Page对象中的属性,

所以需要在用户控件中使用this.Page.RouteData来获取参数

使用this.Page.RouteData.Values["id"]来获取参数的值

35、小数点后显示两位小数的方法

 36、提交验证

学习交流群:364976091