ASP.Net网站程序在编译发布部署后的后期修改
ASP.Net网站程序在发布部署后的后期修改
作者:东篱南山
这里说的后期修改是指网站编译发布并部署好之后,对程序进行的修改,即在不能更改现有代码的情况下,更改页面的显示或是更改业务逻辑。一般是在程序发布并在客户服务器上部署后,客户还会提一些页面上或者是功能上的需求,这种需求往往改动不大,比如改变某处的字体颜色、隐藏某处客户看得不爽的东西,或是要增加一个功能块,或是要另外增加一个简单的数据检索页面,或是增加单点登录的功能。此时若是再回来改原有程序,然后再发布、再重新部署,工作量将不是一般的大。如果是异地的客户,成本将会更加大。这时我们往往可以通过修改现有已部署的网站文件,满足客户的需求。这种情况下能修改的只有发布后的网站文件,如aspx、js、css等文件,根据需要也可以往网站中增加新的页面。
1、客户端的问题,往往通过修改js、css文件,或是往aspx文件中加入js脚本就能解决。js是很强大的,基本可以解决任何客户端的问题,一般是在body的onload事件中进行调用,或是在aspx文件的末尾处加入js块,来修改服务器已经输出的html页面内容。
2、有些问题必须通过修改服务器代码来完成。我们可以在aspx文件中增加runat="server"的Script块,来实现增加一系列的方法。可以重写后台类(包括Page父类)的一些virtual的方法。常用的就是重写OnLoad方法,来实现页面加载时调用我们新加的方法。如果后台代码不包含什么核心代码,我们甚至可以将后台代码全部放到aspx文件中重写。
3、有时候需要增加新的aspx页面或是新的asmx的web服务页面,来满足客户需求。我们可以利用aspx页面是单独运行的特点来实现,而不必合并原有项目到一起进行重新编译。在VS中新建一个空的网站,然后把已经部署的网站中的dll引用进来,然后就可以使用系统的各种类,也可以使用页面的Session,来进行新页面的业务代码编写了。写好之后进行发布时选上“使用固定命名和单页程序集”,然后发布,然后将发布好的aspx文件及其对应的bin下那个dll一起复制到已发布的网站中,就可以直接运行了。用这种方式可以增加单点登录中登入本地的验证web服务及登入对方的登录页面,实现双向的单点登录。每个客户的单点登录方式基本上都是不一样的,这也是可以灵活应付的一种方式。
顺带提一下,上述这样更改后的代码都是没有合并到原有项目的,因此最好在文档中记录相应更改,通用的功能最好合并到正式的产品代码中,以便以后的维护。如果是单纯的一次性项目,那倒是无所谓了。
ASP.Net网站程序在编译发布部署后的后期修改的更多相关文章
- C# -- HttpWebRequest 和 HttpWebResponse 的使用 C#编写扫雷游戏 使用IIS调试ASP.NET网站程序 WCF入门教程 ASP.Net Core开发(踩坑)指南 ASP.Net Core Razor+AdminLTE 小试牛刀 webservice创建、部署和调用 .net接收post请求并把数据转为字典格式
C# -- HttpWebRequest 和 HttpWebResponse 的使用 C# -- HttpWebRequest 和 HttpWebResponse 的使用 结合使用HttpWebReq ...
- [亲测]ASP.NET Core 2.0怎么发布/部署到Ubuntu Linux服务器并配置Nginx反向代理实现域名访问
前言 ASP.NET Core 2.0 怎么发布到Ubuntu服务器?又如何在服务器上配置使用ASP.NET Core网站绑定到指定的域名,让外网用户可以访问呢? 步骤 第1步:准备工作 一台Liun ...
- [亲测]七步学会ASP.NET Core 2.0怎么发布/部署到Ubuntu Linux服务器并配置Nginx反向代理实现域名访问
前言 ASP.NET Core 2.0 怎么发布到Ubuntu服务器?又如何在服务器上配置使用ASP.NET Core网站绑定到指定的域名,让外网用户可以访问呢? 步骤 第1步:准备工作 一台Liun ...
- 如何利用IIS调试ASP.NET网站程序详解
如何利用IIS调试ASP.NET网站程序详解 更新时间:2019年01月13日 08:44:13 作者:江湖逍遥 我要评论 这篇文章主要给大家介绍了关于如何利用IIS调试ASP.NET网 ...
- 从头认识一下docker-附带asp.net core程序的docker化部署
从头认识一下docker-附带asp.net core程序的docker化部署 简介 在计算机技术日新月异的今天, Docker 在国内发展的如火如荼,特别是在一线互联网公司, Docker 的使用是 ...
- Asp.Net 应用程序在IIS发布后无法连接oracle数据库问题的解决方法
asp.net程序编写完成后,发布到IIS,经常出现的一个问题是连接不上Oracle数据库,具体表现为Oracle的本地NET服务配置成功:用 pl/sql 等工具也可以连接上数据库,但是通过浏览器中 ...
- Asp.Net网站的的编译与发布原理
如下所示创建一个简单的asp.Net Web应用程序 在VS中生成解决方案之后,可以在项目的目录下看到以下的文件: ...
- ASP.NET Core 2.0 MVC 发布部署--------- CentOS7 X64 具体操作
.Net Core 部署到 CentOS7 64 位系统中的步骤 1.安装工具 1.apache 2..Net Core(dotnet-sdk-2.0) 3.Supervisor(进程管理工具,目的是 ...
- ASP.NET Core 2.0 MVC 发布部署--------- SUSE 16 Linux Enterprise Server 12 SP2 X64 具体操作
.Net Core 部署到 SUSE 16 Linux Enterprise Server 12 SP2 64 位中的步骤 1.安装工具 1.apache 2..Net Core(dotnet-sdk ...
随机推荐
- Distinct和Group by去除重复字段记录
重复记录 有两个意义,一是完全重复的记录,也即所有字段均重复的记录 二是部分关键字段重复的记录,比如Name字段重复,而其他字段不一定重复或都重复可以忽略. 1.对于第一种重复,比较容易解决,使用 s ...
- Python开发的10个小贴士
下面是十个Python中很有用的贴士和技巧.其中一些是初学这门语言常常会犯的错误. 注意:假设我们都用的是Python 3 1. 列表推导式 你有一个list:bag = [1, 2, 3, 4, 5 ...
- Mac Android签名生成keystore
1.打开终端 2.去到java安装的根目录,即输入 cd /Library/Java/Home/bin/ 3.当前用户没有最高权限,在Library文件夹下不能生成任何文件,可以到当前用户目录下生成文 ...
- 向hive上传数据时,中文乱码
sudo -u hive hive -e "use dataplat;load data local inpath '/home/dlht/data/test/2_times.csv' ov ...
- Linux常用命令_(文件权限)
Linux权限管理: 二.权限管理1.3种基本权限在Linux中,将使用系统资源的人员分为4类:超级用户.文件或目录的属主.属主的同组人和其他人员.超级用户拥有对Linux系统一切操作权限,对 于其他 ...
- JavaScript------事件委托(event delegation)
简单的说,事件委托(event delegation)是在DOM上层(也就是在触发事件的元素的父元素上)定义事件的处理程序,而不是定义在触发事件的元素本身上. 首先我们来举这样一个例子:我有N个li元 ...
- Quartz.Net 配置模板范例
1.App.config <?xml version="1.0" encoding="utf-8"?> <configuration& ...
- Unity3D Built-in Shader详解一
Unity3D内置了很多Shader,文档很详细,自己翻一下.便于加深印象. 首先先解释下Unity3D的Shader.Unity里面的Shaders是使用一种叫ShaderLab的语言编写的,它同微 ...
- topcoder SRM 594 DIV2 AstronomicalRecordsEasy
此题主要考查的是求最长公共子序列 设A[i]:A[j] = a:b = ac:bc B[ii]:B[jj] = c:d = ac:ad , 如果A[i]:A[j] = B[ii]:B[jj ...
- 【COGS & USACO】896. 圈奶牛(凸包)
http://cojs.tk/cogs/problem/problem.php?pid=896 我的计算几何入门题... 看了看白书的计算几何部分,,恩好嘛.. 乃们都用向量!!!! 干嘛非要将2个点 ...