WebForms和MVC这2个模型都很棒,由相关讨论想到的

2023-11-21 15:32

本文主要是介绍WebForms和MVC这2个模型都很棒,由相关讨论想到的,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

看了为WebForms说几句话,以及一些ASP.NET开发上的经验(上) 和为 MVC 和 Web Form 正名的一份“大字报” 的相关评论。
MVC作为架构层面的模式大量应用软件开发中,就是采用WebForm方式,大家也都会应用MVC模式去运用。在微软没有计划asp.net mvc之前,在.net社区中也存在多种MVC模式的asp.net 实现,例如Maverick.NET,MonoRail等。就是使用webform做开发,都是尽量按照MVC模式进行软件的开发,在msdn也有相应的文章Page Controller(页面控制器)和FrontController(前端控制器),这些文章都是2004年的老文章了,当有人向微软相关人士询问asp.net为什么没有对mvc提供支持,ms人士的回答是:aspx和aspx.cs页面就是mvc模式了。
MVC模式本来是架构层面的一个架构模式,不是WebForms和MVC的根本区别。只是他们对MVC的支持程度的问题。同一个问题有多种解决方案是非常好的事,我们所处的微软生态环境下,扮演的是微软的好孩子,开源社区有非常好的解决方案在微软插足的时候不会得到应有的重视。难道这是国内的.net区别java的最大特点。MonoRail在社区已经存在多年,而且社区(国外)很活跃,上面也有非常的应用。然而在国内并不活跃,我算是活跃分子,我一直在关注.net开源社区,monorail我自然也在使用,当然我也在使用webform。当然我也一直在Castle框架,Castle框架最大的一个特性当然就是依赖注入的IOC了,这是一个重要的设计模式。微软到目前为止还没有提供足够的支持,当然微软现在在行动,微软的架构和模式团队开发的企业类库,大家一定非常的熟悉,在微软Enterprise Library 1.0只是将几个常使用模块组合起来,各个模块之间的依赖关系非常的强,也就是耦合性非常强,微软Enterprise Library 2.0同样这几个模块,但是做了重新的设计,引入了组件ObjectBuilder,我就写了MS 的IOC容器(ObjectBuilder)?,虽然ObjectBuilder具备了IOC的基本特征,但是他同Castle框架比起来相差太远了,Castle可以是完整的开发框架,微软Enterprise Library 4.0将支持依赖注入 。是否还需要来讨论依赖注入是否值得?

所属话题: WebForms与MVC

这篇关于WebForms和MVC这2个模型都很棒,由相关讨论想到的的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/403271

相关文章

详解如何使用Python从零开始构建文本统计模型

《详解如何使用Python从零开始构建文本统计模型》在自然语言处理领域,词汇表构建是文本预处理的关键环节,本文通过Python代码实践,演示如何从原始文本中提取多尺度特征,并通过动态调整机制构建更精确... 目录一、项目背景与核心思想二、核心代码解析1. 数据加载与预处理2. 多尺度字符统计3. 统计结果可

SpringBoot整合Sa-Token实现RBAC权限模型的过程解析

《SpringBoot整合Sa-Token实现RBAC权限模型的过程解析》:本文主要介绍SpringBoot整合Sa-Token实现RBAC权限模型的过程解析,本文给大家介绍的非常详细,对大家的学... 目录前言一、基础概念1.1 RBAC模型核心概念1.2 Sa-Token核心功能1.3 环境准备二、表结

解决tomcat启动时报Junit相关错误java.lang.ClassNotFoundException: org.junit.Test问题

《解决tomcat启动时报Junit相关错误java.lang.ClassNotFoundException:org.junit.Test问题》:本文主要介绍解决tomcat启动时报Junit相... 目录tomcat启动时报Junit相关错误Java.lang.ClassNotFoundException

Maven中引入 springboot 相关依赖的方式(最新推荐)

《Maven中引入springboot相关依赖的方式(最新推荐)》:本文主要介绍Maven中引入springboot相关依赖的方式(最新推荐),本文给大家介绍的非常详细,对大家的学习或工作具有... 目录Maven中引入 springboot 相关依赖的方式1. 不使用版本管理(不推荐)2、使用版本管理(推

IntelliJ IDEA 中配置 Spring MVC 环境的详细步骤及问题解决

《IntelliJIDEA中配置SpringMVC环境的详细步骤及问题解决》:本文主要介绍IntelliJIDEA中配置SpringMVC环境的详细步骤及问题解决,本文分步骤结合实例给大... 目录步骤 1:创建 Maven Web 项目步骤 2:添加 Spring MVC 依赖1、保存后执行2、将新的依赖

Python的time模块一些常用功能(各种与时间相关的函数)

《Python的time模块一些常用功能(各种与时间相关的函数)》Python的time模块提供了各种与时间相关的函数,包括获取当前时间、处理时间间隔、执行时间测量等,:本文主要介绍Python的... 目录1. 获取当前时间2. 时间格式化3. 延时执行4. 时间戳运算5. 计算代码执行时间6. 转换为指

Spring Security基于数据库的ABAC属性权限模型实战开发教程

《SpringSecurity基于数据库的ABAC属性权限模型实战开发教程》:本文主要介绍SpringSecurity基于数据库的ABAC属性权限模型实战开发教程,本文给大家介绍的非常详细,对大... 目录1. 前言2. 权限决策依据RBACABAC综合对比3. 数据库表结构说明4. 实战开始5. MyBA

Java的IO模型、Netty原理解析

《Java的IO模型、Netty原理解析》Java的I/O是以流的方式进行数据输入输出的,Java的类库涉及很多领域的IO内容:标准的输入输出,文件的操作、网络上的数据传输流、字符串流、对象流等,这篇... 目录1.什么是IO2.同步与异步、阻塞与非阻塞3.三种IO模型BIO(blocking I/O)NI

基于Flask框架添加多个AI模型的API并进行交互

《基于Flask框架添加多个AI模型的API并进行交互》:本文主要介绍如何基于Flask框架开发AI模型API管理系统,允许用户添加、删除不同AI模型的API密钥,感兴趣的可以了解下... 目录1. 概述2. 后端代码说明2.1 依赖库导入2.2 应用初始化2.3 API 存储字典2.4 路由函数2.5 应

JavaScript Array.from及其相关用法详解(示例演示)

《JavaScriptArray.from及其相关用法详解(示例演示)》Array.from方法是ES6引入的一个静态方法,用于从类数组对象或可迭代对象创建一个新的数组实例,本文将详细介绍Array... 目录一、Array.from 方法概述1. 方法介绍2. 示例演示二、结合实际场景的使用1. 初始化二