ASP .净MVC3手把手教你构建网
开发工具:VS2010 MSSQL2005,需要使用MVC3.0
环境配置
第一步:到官方网站下载MVC3,提供了简体中文。先安装AspNetMVC3ToolsUpdateSetup.exe,然后安装AspNetMVC3ToolsUpdateVS11Setup.exe
http://www.microsoft.com/download/en/details.aspx?displaylang=enid=1491
第二步:新建数据库,创建测试表。然后往表里插入些测试数据
使用GO /*****对象:表[dbo].[新闻实体]脚本日期: 03/12/2012 22:0:59 * * * * * */设置开始时为空设置引用的开始时标识符创建表.[新闻实体]([NId] [int] IDENTITY(1,1) NOT NULL,[Title][nvarchar](100)COLLATE Chinese _ PRC _ CI _ AS NOT NULL,[Information][text]COLLATE Chinese _ PRC _ CI _ AS NULL,[Time][datetime]NOT NULL CONSTRAINT[DF _ new entity _ Time]DEFAULT(getdate()),CONSTRAINT[PK _ newentity]主键聚簇([NId]ASC)带(PAD _ INDEX=关,IGNORE _ DUP _ KEY=关)开[主])开[主]文本图像开[主]构建列表页面
第一步:打开VS,新建选择MVC3网络应用程序,输入项目名称以及目录
第二步:创建新闻实体类,本文使用自己手写实体类(没有使用临朐等orm)
[TableAttribute(' NewsEntity ')]//这行很重要,因为手动音量调节框架默认去中找类名复数的表名公共类新闻实体{[键]//设置主键public int NId { get设置;} [StringLength(100)]//设置验证信息[必需(错误消息='标题不能为空)][显示名称('标题)]公共字符串标题{ get设置;}[必需(错误消息='正文必须填写)][显示名称('正文)]公共字符串信息{获取设置;}公共日期时间时间{获取设置;} } 第三步:配置数据库连接字符,注意此处的名字对应下一步中创建的类名。
连接字符串添加名称='ProjectEntity '连接字符串='数据源=ip初始目录=yanComdb持续安全信息=真;用户标识=;密码=' providerName='系统数据。SqlClient//connectionStrings第四步:创建ProjectEntity类,需要继承DbContext
公共类项目实体: db上下文{ public dbsetnewentity new entity { get;设置;} } 第五步:新建控制器,
项目实体PE=新项目实体();公众行动结果新闻(){尝试{ var list=PE .新实体。to list();返回视图(列表);} catch(异常e){扔e;} } 第六步:在新闻上右键,新建视图。勾选"创建强类型视图",选择新闻实体,支架模块选择目录
添加后,cshtml代码如下:
@模特IEnumerableTaiQiu .模型。新闻实体@{视图包标题='后台新闻管理列表;布局=' ~/view/Shared/_ mlayout。“cshtml”;} h2新闻列表/h2 p @Html .ActionLink('添加,'创建)/p表格宽度='50px '标识/宽度='300px '标题/th宽度=' 150像素'时间/th/th/tr @ foreach(模型中的定义变量项目){ tr td @Html .显示(模型项目=项目.NId) /td td @Html .显示(模型项目=项目.标题)/td td @Html .显示(模型项目=项目.Time) /td td @Html .ActionLink('编辑,' EditNews ',new { id=item .NId }) | @Html .ActionLink('删除、“删除新闻”,新的{ id=item .NId })/TD/tr }/表格运行后效果图如下:
到此,第一个列表页面就完成了(未涉及分页,后续会更新)。关于添加,修改,删除也就很容易了。
添加控制器代码:
[httpset][ValidateInput(false)]公共操作结果创建(新闻实体新闻){ if (ModelState .IsValid) {新闻.时间=日期时间。现在;体育。新闻实体。添加(新闻);试试{ PE .saveChanges();返回重定向至操作('新闻');} catch(异常e){扔e;} }返回视图();} 添加页面:
@模特太尉。模型。新闻实体@{视图包标题='添加新闻;布局=' ~/view/Shared/_ mlayout。“cshtml”;} h2添加新闻/h2脚本src=' http: @ Url .内容(' ~/Scripts/jquery。验证。量滴js ')' type=' text/JAVAScript '/script script src=' http : @ URl .内容(' ~/Scripts/jquery。验证。包括。量滴js ')' type=' text/JAVAScript '/script script src=' http : @ URl .内容(' ~/脚本/种类编辑器/种类编辑器。js ')' type=' text/JAVAScript '/script script src=' http : @ URl .内容(' ~/Scripts/kind editor/lang/zh _ cn。js ')'类型='text/javascript'/script脚本类型=' text/JavaScript ' var编辑器;KindEditor.ready(函数(K){ editor=K . create(' textarea[name=' Information ']',{ allowfilemanager : true });});/script @使用(Html .begin inform()){ @ Html .ValidationSummary(true)字段集legendNews/legend div class=' editor-label ' @ Html .标签(型号=型号.title)/div class=' editor-field ' @ Html .TextBoxFor(model=model .Title,new { style=' width :500 px ' })@ Html .ValidationMessageFor(model=model .title)/div class=' editor-label ' @ Html .标签(型号=型号.信息)/div class=' editor-field ' @ Html .textarefor(model=model .信息,新{ style=' width :800 pxh three :400 px ' })@ Html .ValidationMessageFor(model=model .信息)/设计资料页输入类型='提交'值=' Create '/p/field set } div @ Html .ActionLink('返回列表、"索引"/div修改页面一样控制器稍微有点修改:
[httpset][ValidateInput(false)]公开行动结果编辑新闻(新闻实体新闻){ if (ModelState .IsValid) {新闻.时间=日期时间。现在;体育。入口(新闻)。状态=实体状态。已修改;//修改体育saveChanges();返回重定向至操作('新闻');}返回视图(新闻);} 删除控制器代码:
公共行动结果删除新闻(int id){ var model=PE .新实体。查找(id);体育。新实体。删除(模型);体育saveChanges();返回重定向至操作('新闻');} 小编刚接触MVC3,本文也只是本人学习中的一点点积累,有很多不好的地方,希望大家多提意思。
版权声明:ASP .净MVC3手把手教你构建网是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。