选择InternetApplication 和Razor引擎
邮件Controllers文件夹>Add Controller
可以看到Index Action找不到合适的View 。
这一步只为了说明MVC的工作流程,简单的改成返回Content Result 即可:
下一步,就是如何让路由来找到我们刚才添加的Controller了,打开路由配置文件:
我们看到微软添加了两个默认的路由节点:
第一个是的资源文件的保护
第二个是:
Name :路由名称
url : url的匹配pattern
defaults:默认的controller和index名称
我们现在要看到刚才添加的controller返回的字符串,如何做?
如果此时直接F5运行,可以看到打开的是默认首页:
我们在浏览器指定我们的controller名字,这样路由就可以找到了:
我们甚至可以把路由改一下,默认controller指向SayHello:
现在F5运行,直接会看到路由找到了刚添加的SayHello Controller和Action,运行结果同上。
现在介绍一下客户端请求进来的过程:
Action可以返回View ,Partial View , Content, Json , FileStream等等。
总结:
和Web Form 相比,MVC没有了生命周期的概念,强调了HTTP请求-返回的通信。每次操作要发起一个Http请求,然后服务器端路由解析URL,寻找controller,返回客户端一个结果,可能是字符串,HTML,或者json,MVC框架使得这种通讯更灵活,易组合适应多种不同场景和客户端需要,后面还会介绍WebAPI如何更好的结合HTTP协议机制来更好的实现Client-Server 模型。