.NET web应用的MVC是如何实现的?

Schlemiel 2003-10-06 01:00:46
刚才看了两个open source的.NET web application,好象页面之间的跳转完全是随意的,并没有发现controller存在的迹象。web控件完全是与aspx页面绑定在一起,作为view的一部分。请问.NET的web应用是否采用MVC模式?如果有,model和controller是如何实现的?MVC的架构一般是如何设计的?

另一个相关的问题:如果工作流由view来控制,如何简单地把web application移植为desktop applicaton?或者说,对于同样的业务,如何用最小的重复编码同时支持web-UI和desktop-GUI?
...全文
31 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuu27 2003-12-25
  • 打赏
  • 举报
回复
如果你不想写成asp/jsp那种web试图,asp.net的view页同时充当了controller的载体,可认为每个page也是controller,没有中央controller的概念.

少少理解,请指教
bingeng 2003-12-25
  • 打赏
  • 举报
回复
http://www.apress.com/book/supplementDownload.html?bID=233&sID=1479

他的第四章应该可以满足您的要求,但是我还没看懂mvc那部分,希望把你的体会和理解发给我 谢谢
hqsee 2003-12-25
  • 打赏
  • 举报
回复
Duwamish And PetShop
DoDone 2003-10-22
  • 打赏
  • 举报
回复
关注。
松耦合紧内聚 2003-10-14
  • 打赏
  • 举报
回复
ASP.NET的事件响应机制有其优点,像gOODiDEA(无语)那个方法我也想过,但是仍然没有解决web application结构混乱的情况。我指的是没有一个像struts那样的配置文件来管理整个应用的request和reponse的流程,可以通过配置文件让人对application的流程一目了然。所以哪个方法还是把业务逻辑层与表示层的衔接做到了各个aspx.cs文件中了,总是感觉不爽!
请各位高人指教!
Schlemiel 2003-10-06
  • 打赏
  • 举报
回复
to gOODiDEA(无语):
或者说,建立一个位于Data Access层与Presentation层之间的Business Service层,是这样吧?在这一层上,MS有没有什么标准或者推荐的做法?
gOODiDEA 2003-10-06
  • 打赏
  • 举报
回复
为你的应用建一个类,把具体的操作写到里面,它是位于DAL之上的,在ASPX.CS中调用该类的方法。
Schlemiel 2003-10-06
  • 打赏
  • 举报
回复
刚看完了Implement MVC with ASP.NET那一章。这里的controller仍然是依赖于ASP.NET的:
public class Solution : System.Web.UI.Page

而且Solution类的方法也紧密地与特定的ASP.NET页面耦合在一起(譬如SubmitBtn_Click方法,desktop-based application会如何调用这样一个方法?console-based application呢?),我更愿意把它看作view的一个组成部分,而不是一个controller——它只不过是把页面上的一些代码搬到.cs文件里,让页面看上去干净一些。就象Struts的ActionForm、Tapestry的Page Class,它更应该属于view的一种实现方式。

所以我最初的问题仍然没有解决:如果业务操作由如此厚重的view(或者按照MS的说法,把它叫做controller吧,但它毕竟是与ASP.NET紧密耦合的)来完成,当你想为这个web application提供另一种view(例如XSLT-view,甚至干脆就是desktop client),如何能够避免重复这些业务代码?更何况类似于Solution类的code-behind class看起来是要直接控制工作流的。请lins(以及其他的高手)指教。
Schlemiel 2003-10-06
  • 打赏
  • 举报
回复
没想到这么晚还有高手在。多谢lins。
我已经down了ESP,请问那几个经典例子在哪里可以找到?
树猫 2003-10-06
  • 打赏
  • 举报
回复
看看 微软的 petshop
林仪明 2003-10-06
  • 打赏
  • 举报
回复
倒!没有看过微软准备的几个经典例子吧!

好好去看吧。看了你就知道!

还有微软6月底出了一本书《Enterprise Solutions Pattern with .Net》

前几天还有一个帖子有链接,或者你到微软的网站上搜
ESP就可以。
下载后自己看就好了!

我这里就不copy了。
Schlemiel 2003-10-06
  • 打赏
  • 举报
回复
mark一下
An outstanding author team presents the ultimate Wrox guide to ASP.NET MVC 4 Microsoft insiders join giants of the software development community to offer this in-depth guide to ASP.NET MVC, an essential web development technology. Experienced .NET and ASP.NET developers will find all the important information they need to build dynamic, data-driven websites with ASP.NET and the newest release of Microsoft's Model-View-Controller technology. Featuring step-by-step guidance and lots of code samples, this guide gets you started and moves all the way to advanced topics, using plenty of examples. Designed to give experienced .NET and ASP.NET programmers everything needed to work with the newest version of MVC technology Expert author team includes Microsoft ASP.NET MVC insiders as well as leaders of the programming community Covers controllers, views, models, forms and HTML helpers, data annotation and validation, membership, authorization, security, and routing Includes essential topics such as Ajax and jQuery, NuGet, dependency injection, unit testing, extending MVC, and Razor Includes additional real-world coverage requested by readers of the previous edition as well as a new case study example chapter 下面是上一版书的中文介绍 《ASP.NET MVC 3 高级编程》主要内容是描述视图的概念,探讨Razor语法、NuGet、单元测试等,解释控制器在MVC框架中的作用,以及模型在绑定和数据访问策略中发挥的作用,演示如何显示和处理表单,涵盖添加到April 2011 Tools Update中的新特性,如基架和HTML5项目模板,展示在客户端和服务器端验证模型的过程给出利用成员资格、援权和安全特性的忠告,讲解将TDD应用于ASP.NET MVC的方法。

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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