有用MVC开发过项目吗?.net

strawman79 2008-07-19 11:36:35
有用MVC开发过项目吗?.net
蛮喜欢这种结构的。有经验者能不谈谈用这种结构开发项目的优劣?要注意些什么吗?谢谢!
...全文
174 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
xanewong111 2008-08-02
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 strawman79 的回复:]
我对Mode和View层基本了解了,但还不是很理解control层。Control层是什么?定义接口?
[/Quote]
Control从字面说理解,是控制层。我一般把BLL和DAL归到这个层里。DAL里的执行数据库的又用DBHelper。主要是把业务处理、页面显示、数据处理分开
jiangpinhe 2008-07-24
  • 打赏
  • 举报
回复
二楼的兄台说的对,当初人们提出mvc开发模式的时候就是为了在大项目开发中为了是项目中开发各个环节的人都有统一的规范,不至于每个人把各自的环节都做好以后没法合并,你要是自己做一个项目的话用mvc可就起到相反的效果了
xanewong111 2008-07-24
  • 打赏
  • 举报
回复
MVC不存在用WINFORM还是WEBFORM,只是MVC中的V层变个方式而已。如果你严格按照MVC模式开发出来的程序,就算你把WINFORM改成WEBFORM都很不是很复杂,因为你只用去改他的View层就行了,而Model和control层基本无需更改
strawman79 2008-07-24
  • 打赏
  • 举报
回复
我对Mode和View层基本了解了,但还不是很理解control层。Control层是什么?定义接口?
strawman79 2008-07-23
  • 打赏
  • 举报
回复
是不是没有用这种结构开发WINAPP的?
Jinglecat 2008-07-21
  • 打赏
  • 举报
回复
已经由不得不流行了,MS 忍不住要正面支持 MVC,O/R Mapping,Entity....
当然一方面也是 .NET 逐渐成熟,这是发展趋势

Web 方面MS以开源姿态支持codeplex上的asp.net mvc

但是,WinForm 方面似乎还没有动作,还是 SmartClient

MS 好像在说,J2EE 有的我.NET一定会有的 ^_^

amandag 2008-07-20
  • 打赏
  • 举报
回复
自己使用mvc的模式开发难度应该不小,可以考虑使用asp.net 提供的mvc框架
winner2050 2008-07-20
  • 打赏
  • 举报
回复
.net 的世界里面不怎么流行。
ccb8888 2008-07-20
  • 打赏
  • 举报
回复
我是用MonoRail的,偶感觉还是挺好的。。
http://www.cnblogs.com/firstyi/archive/2007/10/17/927967.html
twtetg 2008-07-20
  • 打赏
  • 举报
回复
http://blog.joycode.com/scottgu/archive/2007/10/15/109399.aspx
strawman79 2008-07-20
  • 打赏
  • 举报
回复
我不是做WEBFORM,是想做WINAPP的。这种结构很复杂吗?感觉用这种结构做起来,条理很清晰!
rickey 2008-07-20
  • 打赏
  • 举报
回复
http://www.asp.net/mvc/
wuyanteng1 2008-07-20
  • 打赏
  • 举报
回复
上网找找吧
kyle315 2008-07-20
  • 打赏
  • 举报
回复
开发复杂的项目可以用用试试,自己开发东西就算了,会把简单的事情复杂化。
《asp.net mvc 3高级编程》 第1章 入门 1 1.1 asp.net mvc简介 1 1.1.1 asp.net mvc如何适应asp.net 1 1.1.2 mvc模式简介 2 1.1.3 mvc在web框架中的应用 2 1.1.4 asp.net mvc 3的发展历程 3 1.1.5 razor视图引擎 5 1.1.6 验证的改善 8 1.1.7 强大的javascript支持 9 1.1.8 高级功能 9 1.1.9 asp.net mvc 3特性总结 10 1.2 创建asp.net mvc 3应用程序 10 1.2.1 创建asp.net mvc 3应用程序的软件要求 11 1.2.2 安装asp.net mvc 3 11 1.2.3 创建asp.net mvc 3应用程序 12 1.2.4 new asp.net mvc 3 project对话框 13 1.3 asp.net mvc应用程序的结构 17 1.4 小结 20 第2章 控制器 21 .2.1 控制器的角色 21 2.2 控制器简史 22 2.3 示例应用程序:mvc music store 23 2.4 控制器基础 26 2.4.1 简单示例:home controller 26 2.4.2 创建第一个(非常简单的)控制器 29 2.4.3 控制器操作中的参数 31 2.5 小结 33 第3章 视图 35 3.1 视图的作用 36 3.2 指定视图 38 3.3 强类型视图 39 3.4 视图模型 41 3.5 添加视图 42 3.5.1 add view对话框中的选项 42 3.5.2 自定义t4视图模板 45 3.6 razor视图引擎 46 3.6.1 razor的概念 46 3.6.2 代码表达式 48 3.6.3 html编码 50 3.6.4 代码块 51 3.6.5 razor语法示例 52 3.6.6 布局 54 3.6.7 viewstart 56 3.7 指定分部视图 57 3.8 视图引擎 58 3.8.1 配置视图引擎 58 3.8.2 查找视图 59 3.8.3 视图本身 60 3.8.4 其他的视图引擎 61 3.9 新的视图引擎还是新的actionresult 62 3.10 小结 63 第4章 模型 65 4.1 为mvc music store建模 65 4.2 为商店管理器构造基架 68 4.2.1 基架的概念 68 4.2.2 基架和实体框架 69 4.2.3 执行基架模板 71 4.2.4 执行基架代码 75 4.3 编辑专辑 78 4.3.1 创建编辑专辑的资源 79 4.3.2 响应编辑时的post请求 81 4.4 模型绑定 83 4.4.1 defaultmodelbinder 84 4.4.2 模型绑定安全性简介 85 4.4.3 显式模型绑定 85 4.5 小结 86 第5章 表单和html辅助方法 89 5.1 表单的使用 89 5.1.1 action和method特性 90 5.1.2 get方法还是post方法 90 5.2 html辅助方法 94 5.2.1 自动编码 95 5.2.2 辅助方法的使用 95 5.2.3 html辅助方法的工作原理 96 5.2.4 设置专辑编辑表单 97 5.2.5 添加输入元素 98 5.2.6 辅助方法、模型和视图数据 102 5.2.7 强类型辅助方法 104 5.2.8 辅助方法和模型元数据 105 5.2.9 模板辅助方法 105 5.2.10 辅助方法和modelstate 106 5.3 其他输入辅助方法 107 5.3.1 html.hidden 107 5.3.2 html.password 107 5.3.3 html.radiobutton 107 5.3.4 html.checkbox 108 5.4 渲染辅助方法 108 5.4.1 html.actionlink和html.routelink 109 5.4.2 url辅助方法 110 5.4.3 html.partial和html.renderpartial 110 5.4.4 html.action和html.renderaction 111 5.5 小结 113 第6章 数据注解和验证 115 6.1 为验证注解订单 116 6.1.1 验证注解的使用 117 6.1.2 自定义错误提示消息及其本地化 121 6.1.3 注解的后台原理 122 6.1.4 控制器操作和验证错误 123 6.2 自定义验证逻辑 125 6.2.1 自定义注解 125 6.2.2 ivalidatableobject 128 6.3 显示和编辑注解 129 6.3.1 display 130 6.3.2 scaffoldcolumn 130 6.3.3 displayformat 131 6.3.4 readonly 131 6.3.5 datatype 132 6.3.6 uihint 132 6.3.7 hiddeninput 132 6.4 小结 132 第7章 应用程序的安全性 133 7.1 使用authorize特性登录 135 7.1.1 保护控制器操作 135 7.1.2 authorize特性在表单身份验证、accountcontroller控制器中的用法 139 7.1.3 intranet application模板中的windows authentication 141 7.1.4 整个控制器的安全性 141 7.2 要求角色成员使用authorize特性 142 7.3 扩展角色和成员 143 7.4 web应用程序中的安全向量 143 7.4.1 威胁:跨站脚本 144 7.4.2 威胁:跨站请求伪造 154 7.4.3 威胁:cookie盗窃 158 7.4.4 威胁:重复提交 160 7.4.5 威胁:开放重定向 162 7.5 适当的错误报告和堆栈跟踪 170 7.5.1 使用配置转换 171 7.5.2 使用retail部署配置 172 7.5.3 使用专门的错误日志系统 172 7.6 安全回顾和有用资源 172 7.7 小结 173 第8章 ajax 175 8.1 jquery 175 8.1.1 jquery的特性 176 8.1.2 非侵入式javascript 179 8.1.3 jquery的用法 180 8.2 ajax辅助方法 183 8.2.1 ajax的actionlink方法 183 8.2.2 html 5特性 185 8.2.3 ajax表单 186 8.3 客户端验证 188 8.3.1 jquery验证 189 8.3.2 自定义验证 190 8.4 辅助方法之外 194 8.4.1 jquery ui 194 8.4.2 使用jquery ui实现自动完成部件 195 8.4.3 json和jquery模板 199 8.5 提高ajax性能 204 8.5.1 使用内容分发网络 204 8.5.2 脚本优化 204 8.6 小结 205 第9章 路由机制 207 9.1 理解url 208 9.2 路由机制概述 209 9.2.1 对比路由和url重写 209 9.2.2 路由的定义 209 9.2.3 命名路由 217 9.2.4 mvc区域 219 9.2.5 catch-all参数 220 9.2.6 段中的多个url参数 221 9.2.7 stoproutinghandler和ignoreroute 222 9.2.8 路由的调试 223 9.2.9 揭秘路由如何生成url 224 9.3 揭秘路由如何绑定到操作 230 9.3.1 高层次请求的路由管道 230 9.3.2 路由数据 230 9.4 自定义路由约束 231 9.5 web forms和路由机制 232 9.6 小结 233 第10章 nuget 235 10.1 nuget概述 235 10.2 nuget安装 236 10.3 以包的形式添加库 238 10.3.1 查找包 239 10.3.2 安装包 240 10.3.3 更新包 242 10.3.4 最近使用的包 243 10.4 创建包 245 10.4.1 文件夹结构 246 10.4.2 nuspec文件 246 10.4.3 元数据 247 10.4.4 依赖库 248 10.4.5 指定要包含的文件 249 10.4.6 工具 249 10.4.7 框架和轮廓定位 252 10.5 发布包 253 10.5.1 发布到nuget.org 253 10.5.2 使用nuget.exe发布包 256 10.5.3 包浏览器的用法 257 10.5.4 托管私有的nuget供应库 258 10.6 小结 261 第11章 依赖注入 263 11.1 软件设计模式概述 263 11.1.1 设计模式—— 控制反转模式 264 11.1.2 设计模式—— 服务定位器 266 11.1.3 设计模式—— 依赖注入 270 11.2 依赖解析器的用法 272 11.2.1 单一注册服务 274 11.2.2 复合注册服务 275 11.2.3 创建任意对象 278 11.3 小结 280 第12章 单元测试 281 12.1 单元测试和测试驱动开发的意义 282 12.1.1 单元测试的定义 282 12.1.2 测试驱动开发的定义 283 12.2 创建单元测试项目 286 12.2.1 检查默认单元测试 287 12.2.2 只测试自己编写的代码 290 12.3 单元测试用于asp.net mvc应用程序的技巧和窍门 291 12.3.1 控制器测试 291 12.3.2 路由测试 296 12.3.3 验证测试 298 12.4 小结 302 第13章 扩展asp.net mvc 303 13.1 模型扩展 304 13.1.1 把请求数据转化为模型 304 13.1.2 用元数据描述模型 309 13.1.3 验证模型 312 13.2 视图扩展 315 13.2.1 自定义视图引擎 315 13.2.2 编写html辅助方法 317 13.2.3 编写razor辅助方法 319 13.3 控制器扩展 319 13.3.1 操作选择 319 13.3.2 操作过滤器 321 13.3.3 提供自定义结果 323 13.4 小结 324 第14章 高级主题 325 14.1 高级razor 325 14.1.1 模板化的razor委托 325 14.1.2 视图编译 326 14.2 高级基架 328 14.2.1 自定义t4代码模板 328 14.2.2 nuget包mvcscaffolding 329 14.2.3 更新的add controller对话框选项 329 14.2.4 使用库模板 330 14.2.5 添加基架器 332 14.2.6 额外资源 332 14.3 高级路由 332 14.3.1 routemagic 332 14.3.2 可编辑的路由 333 14.4 模板 337 14.4.1 默认模板 338 14.4.2 自定义模板 342 14.5 高级控制器 344 14.5.1 定义控制器:icontroller接口 344 14.5.2 controllerbase抽象基类 346 14.5.3 控制器类和操作 346 14.5.4 actionresult 351 14.5.5 操作调用器 359 14.5.6 使用异步控制器操作 362 14.6 小结 370
YQBlog - 基于Asp.Net MVC3 EF4.0技术的个人博客系统。 网站结构: 权限:.net membership 文章分类:category.js(json格式存储) 文章内容:表 blog_article,blog_articledetail 以及 视图 blog_varticle 配置信息:general.config Json Json的序列化以及反序列化,主要是文章分类信息部分。 Xml xml的序列化以及反序列化,配置信息general.config 部分。 Ajax异步:Jquery方式以及MVC方式 评论提交,评论显示,文章推荐等 Jquery 程序中的js基于jquery编写 用到的一些jquery插件: jquery.lazyload.js:图片预加载 jquery.pager.js:分页 jquery.dragsort.js:拖曳排序 jquery.ui.datepicker.js:日期控件 jquery.ad-gallery.js:相册 jquery.uploadify-3.1.js:多文件(图片)上传 kindeditor编辑器 kindeditor编辑器在mvc3中的应用,主要是文件(图片)上传部分的改造 SyndicationFeed 文章以及评论rss Ninject 实现Models层与Controllers之间的依赖注入 HtmlAgilityPack HTML解析,url投稿功能处有用到 缓存 页面缓存 OutputCache 以及对象缓存 HttpRuntime.Cache 如果你提交了文章发现首页没有更新,那是因为默认设置了5分钟的页面缓存。 webconfig中caching节点处,你可以在这里修改设置。 开发环境: Visual Studio 2010(MVC3) SQL2008 运行环境: .net framework 4.0 SQL2008 网站架构: MVC3 EF4.0 SQLSERVER2008 JSON XML

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧