初学MVC 3

来源:互联网 发布:禁忌搜索算法 特赦规则 编辑:程序博客网 时间:2024/06/03 09:11
我只是在网上找了一些网页结合实际工作学了学ASP。Net MVC3 和Razor语法引擎。

感觉MVC3起步比web form 难多了,不适合初学者。

MVC 3 被微软包装太多,预定义了很多东西,一开始不知道,走了很多弯路,难以理解,刚开始调试解错很难。

MVC 3 和ASP差的很远,ASP包装非常的少,容易理解,起步容易。

栽的跟头列出来:

1) 如果不用master page,一定要把master page 里的CSS和javascript以用,否则ModelError怎么也显示不出来,费了很长时间才发现是忘了引用master page里的css和javascript。

2)Action见参数的传递,因为习惯了在查询字符串里添加参数,搞了半天才发现,MVC把查询字符串包装的面目全非,把查询字符串映射到控制器里Action方法的参数,

具体是用

new RouteValueDictionarynew { OriginalAction="Index", OriginalController="Home"}) 来实现,把
RouteValueDictionary的参数名-参数值对分别映射到Action方法里的参数名和参数值,例如上面的会映射到SomeAction(string OriginalAction, string OriginalController),然后在方法体里,
OriginalAction自动得值"Index",  OriginalController自动得值"Home"3)ModelError如果转发(RedirectToAction)会丢失,改用RouteValueDictionary 实例传递4)如果用return View(),一定要在对应的控制器文件夹里或者在共享文件夹里有一个对应Action名的cshtml文件。5)MVC3工程文件是预编译的,刚开始没发现,测试部署后改了半天cs文件发现没用才意识到