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 ...
随机推荐
- ajax请求node.js接口时出现 No 'Access-Control-Allow-Origin' header is present on the requested resource错误
ajax请求node.js接口出现了如下的错误: XMLHttpRequest cannot load http://xxx.xxx.xx.xx:8888/getTem?cityId=110105&a ...
- Oracle创建表空间和表
创建表空间和表ORACLE物理上是由磁盘上的以下几种文件:数据文件和控制文件和LOGFILE构成的oracle中的表就是一张存储数据的表.表空间是逻辑上的划分.方便管理的.数据表空间 (Tablesp ...
- PHP 读取逐条数据库记录,以及提交下拉菜单选项
<?php $db_host=localhost; //MYSQL服务器名$db_user=root; //MYSQL用户名$db_pass="******"; //MYSQ ...
- POJ2115 C Looooops(线性同余方程)
无符号k位数溢出就相当于mod 2k,然后设循环x次A等于B,就可以列出方程: $$ Cx+A \equiv B \pmod {2^k} $$ $$ Cx \equiv B-A \pmod {2^k} ...
- fork和execve
fork函数在新的子进程中运行相同的程序,新的子进程是父进程的一个复制品. execve函数在当前进程的上下文中加载并运行一个新的程序.它会覆盖当前进程的地址空间,但并没有创建一个新的进程.新的程序仍 ...
- 【BZOJ】2002: [Hnoi2010]Bounce 弹飞绵羊(lct)
http://www.lydsy.com/JudgeOnline/problem.php?id=2002 (BZOJ挂了,还没在BZOJ测,先是在wikioi测过了,,) 囧.在军训时立志要学lct! ...
- winform学习之----重新绘制边框方法延伸
方法1. Pen pen1 = new Pen(Color.FromArgb(233, 149, 87)); e.Graphics.DrawRectangle(pen1, new ...
- ITK 4.8.1 Qt 5.4 MinGW 4.9.1 Configuration 配置
Download ITK 4.8.1 Download Qt 5.4 with MinGW 4.9.1 Download CMake 3.2.0 I assume you've already ins ...
- php如何判断远程文件是否存在
<?php /* 函数:remote_file_exists 功能:判断远程文件是否存在 参数: $url_file -远程文件URL 返回:存在返回true,不存在或者其他原因 ...
- 使用Hydra扫描网络中存在SSH弱登录密码的Linux系统
1. apt-get install cmake libssl-dev 2. apt-get install hydra (需要图形界面的话用hydra-gtk) 3. hydra -s 22 -v ...