.NET工程个性化开发方案
来源:互联网 发布:php网站流量统计 编辑:程序博客网 时间:2024/05/16 00:55
我们的项目使用的是.NET的web应用程序进行开发的,但是,在产品正式发布以后,发现很多客户仍旧有一些零散的需求需要进行个性化开发,有的只是涉及到前台的展现或设计,但是有的需求就涉及到我们产品的后台流程,类似前者的需求,我们可以很容易地进行替换实施,但是针对后者的需求,我们如果通过再次编译主版本的工程dll,然后进行替换的话,这样存在 很大的隐患,那就是如果我们在开发个性化需求的时候,如果不小心影响了原来的流程的话,那么这个后果往往是不可以想象的……
所以,我们必须寻找另外一个合适的方式来应对客户涉及流程的需求变更,尽量能够保证主版本的dll不进行替换,于是有了下面的一个方案,仅供大家参考:
1.单独创建一个ClassLibrary项目
2.为项目添加引用:System.web、添加cs类文件和自定义命名空间SpecialNamespace
3.创建page继承类:public class SpecialClass : System.Web.UI.Page
4.创建页面初始化函数:protected void Page_Load(object sender, EventArgs e)
5.编译个性化项目工程,并得到special.dll库文件
6.将个性化需要修改或添加的页面的aspx页面的Inherits属性值修改为"SpecialNamespace.SpecialClass"
7.将special.dll和修改的页面文件一起拷贝到主工程相同目录,其中dll文件拷贝到bin目录
8.重新进入主工程即可实现功能的修改,而且是不用替换原工程dll,获取了最大的安全性
9.最后还要说一点,有关页面中含有服务器端控件的问题:需要创建web应用程序工程,并添加一个web窗体,保证此窗体的中同样包含待修改页面的全部服务器端控件,这样才能正常编译,并保证替换后不出现问题
当然,针对个性化开发,为了保证版本的历史维护,必须指定相关的一些规范,这就因团队不同而不同了,但是有一个统一的规范还是非常必要的。
所以,我们必须寻找另外一个合适的方式来应对客户涉及流程的需求变更,尽量能够保证主版本的dll不进行替换,于是有了下面的一个方案,仅供大家参考:
1.单独创建一个ClassLibrary项目
2.为项目添加引用:System.web、添加cs类文件和自定义命名空间SpecialNamespace
3.创建page继承类:public class SpecialClass : System.Web.UI.Page
4.创建页面初始化函数:protected void Page_Load(object sender, EventArgs e)
5.编译个性化项目工程,并得到special.dll库文件
6.将个性化需要修改或添加的页面的aspx页面的Inherits属性值修改为"SpecialNamespace.SpecialClass"
7.将special.dll和修改的页面文件一起拷贝到主工程相同目录,其中dll文件拷贝到bin目录
8.重新进入主工程即可实现功能的修改,而且是不用替换原工程dll,获取了最大的安全性
9.最后还要说一点,有关页面中含有服务器端控件的问题:需要创建web应用程序工程,并添加一个web窗体,保证此窗体的中同样包含待修改页面的全部服务器端控件,这样才能正常编译,并保证替换后不出现问题
当然,针对个性化开发,为了保证版本的历史维护,必须指定相关的一些规范,这就因团队不同而不同了,但是有一个统一的规范还是非常必要的。
- .NET工程个性化开发方案
- VS.NET 2003 开发环境个性化设置
- 个性化进度条简单实现方案
- [图解]Python开发工具PyCharm个性化设置 修改IDE快捷键方案 设置IDE皮肤主题
- OAF个性化开发实例
- windows下进行嵌入式系统开发工程管理编译方案
- MyEclipse的优化与个性化设置方案
- MyEclipse的优化与个性化设置方案
- MyEclipse的优化与个性化设置方案
- Solr完整个性化搜索排序方案
- 21.4 ToggleButton个性化按钮控件(征服ASP.NET 2.0 Ajax——Web开发技术详解 )
- 个性化定制 ASP.NET Whidbey
- 【iOS开发系列】个性化UITextView
- OAF标准模块个性化扩展开发及其个性化的删除
- 用VB.NET打造个性化ListBox控件
- ASP.NET 2.0个性化配置(profile)
- ASP.NET 2.0个性化配置(profile)
- ASP.NET 2.0个性化配置(profile)
- 使用Spring来创建一个简单的工作流引擎
- 多线程读写文件 加锁
- 编写适合自己的printf()函数(转)
- C#模式中的两个基本原则
- 无需 JDBC 的快速 Java 数据访问
- .NET工程个性化开发方案
- Remove the empty xmlns attribute in generated xml
- mysql udf.dll(UDF)漏洞修补
- 为你的MySQL数据库加铸23道安全门
- JSP/Servlet/JSF:JavaEE 不再需要 Ajax
- C中的可变参数研究
- 如何制作思维导图!
- 热爱Spring的五个理由
- Java基础:一种实现数据库连接池的方法