摘要
本文将完成我们“MVC公告发布系统”的公告发布功能,以此展示在ASP.NET MVC中如何传递处理表单的数据。
前言
通过前几篇文章,我们已经能比较自如的使用ASP.NET MVC来呈现页面和数据了。但是,有一个大问题没有解决:如何处理表单数据。例如,我们将要实现的公告发布功能,用户肯定是在某个表单页面输入标题、正文等内容,而后提交,然后表单数据要被传递到相应的地方交由业务逻辑组件处理。
在传统的ASP.NET下,使用的是Model1模式,每个aspx页面有一个同名的aspx.cs文件,当提交表单时,默认数据被提交到这个同名aspx.cs文件中某个方法下处理。但是,在ASP.NET MVC中,这种方法不能用了,因为我们换用了Model2模式,不能再用同名代码文件来处理aspx的提交请求(但是这不表明同名代码文件就没有用了,实际上,它依然会被执行,但是我们不提倡在里面处理任何逻辑,但是,有时会利用它进行一些初始化操作。),那么应该怎么做呢?不多讲,我们以例子说明问题。
下面我们一步一步完成“MVC公告发布系统”的公告发布功能,等做完这个功能,上面的问题就明了了。
先修改一个错误...
这里,首先要像大家道歉,因为在第一篇里,我犯了一个错误。就是在公告的实体类AnnounceInfo中少了一个属性。现在,我们在AnnounceInfo中添加一个叫Cateogry的属性,类型为int,它用来指明这个公告属于哪个分类。
对于这个错误,我十分抱歉。
建立输入信息页面
下面,正式开始我们的工作。首先,我要建立一个页面,用来让用户输入公告信息。而我们知道,在ASP.NET MVC中不能直接请求aspx文件,任何请求都要通过Controller,所以,我们首先在Controllers目录下建立一个新的Controller类,名叫AnnounceController。删除其中自动生成的Index方法,新建一个名叫Release的Action方法,具体代码如下。
AnnounceController.cs:
详细解决方案
ASP.NET MVC案例课程(基于ASP.NET MVC beta)――第四篇:传递表单数据
热度:507 发布时间:2012-08-16 12:02:16.0
相关解决方案
- 求翻译,发现了 visual studio 11 beta 的bug,反映给官方,官方要求In English解决方法
- 求通译,发现了 visual studio 11 beta 的bug,反映给官方,官方要求In English
- ASP.NET MVC案例课程(基于ASP.NET MVC beta)――第一篇:准备工作
- ASP.NET MVC案例课程(基于ASP.NET MVC beta)――第二篇:第一个页面
- ASP.NET MVC案例课程(基于ASP.NET MVC beta)――第四篇:传递表单数据
- Firefox 4.0 Beta 12 上载
- 求翻译,发现了 visual studio 11 beta 的bug,反映给官方,官方要求In English,该如何处理
- 在 Pandas 数据框中按组回归并添加带有预测值和 beta/t-stats 的列
- 使用 python 从 beta 分布中获取分位数
- Beta by Crashlytics:升级apk不同的签名
- ubuntu 9.10 beta 试用
- 小心QQ正在翻你的硬盘偷窥你的隐私,你还敢用吗?(转自X-beta)
- Firefox 4 Beta 11 抵达
- 开源Webmail客户端Claros inTouch2.2 Beta+James MailServer配置和调试
- coreseek-4.1-beta 安装 mmseg sphinx
- Alpha Testing 和?Beta testing 有什么不同?
- VirtualBox 3.0.0 Beta 2发布
- Visual Studio 2008 and .NET Framework 3.5 Service Pack 1 Beta - ScottGu
- Mediawiki 1.16 Beta 升级至 1.16.0备忘
- 谷歌输入法的英文联想功能(v3.0 beta)
- 关于Unity各发行版区别【Final,LTS,TECH,Patch,Beta,Alpha】