ASP.NET程序部署

原创 2006年05月24日 08:34:00
ASP.NET应用程序结构
XCOPY部署
利用VS.NET的“复制项目”功能部署
使用VS.NET的“Web安装项目”部署

XCOPY部署
• .NET框架的主要目标之一就是简化部署,例
如支持XCOPY部署。
• 无干扰(Zero-Impact)安装:
– 编译器将标识符和元数据信息嵌入到了编译好的
模块之中,而CLR利用这些信息来装入程序集的
适当版本。标识符包含了装入和运行模块、查找
程序集引用的其他模块所需的所有信息。
– 系统不会因为修改注册表、配置组件而受到影
响;另外,无干扰安装也使得组件卸载操作不会
对系统产生任何意外的影响,卸载组件时只要从
特定的目录删除某些文件就可以了。

VS.NET提供的部署项目模板
1. 合并模块项目:将可能由多个应用程序共
享的组件打包。
2. 安装项目:为基于Windows的应用程序生
成安装程序。
3. Web 安装项目:为Web 应用程序生成安
装程序。
4. Cab 项目:创建压缩文件以下载到旧式
Web 浏览器。
安装编辑器介绍
• 文件系统编辑器:向安装软件包添加文件
• 注册表编辑器:为应用程序创建注册表项
• 文件类型编辑器:注册用户程序的具体文件扩展
名称
• 用户界面编辑器:添加和配置对话框,在安装程
序期间显式这些对话框
• 自定义操作编辑器:运行在安装和协载期间启动
定制程序
• 启动条件编辑器:可以规定对应用程序的要求

自动安装数据库的范例

public override void Install(System.Collections.IDictionary stateSaver)
        {
       
            //入口
            strPass = this.Context.Parameters["strPass"];
            AddDBTable("RequestSys");//RequestSys为数据库名称

        }
        private string  GetSql(string strName)
        {
            try
            {
                //' Get the current assembly.
                Assembly Asm = Assembly.GetExecutingAssembly();
                // Resources are named using a fully qualified name
               
                Stream strm  = Asm.GetManifestResourceStream(Asm.GetName().Name + "." + strName);
               
                //Read the contents of the embedded file.
                StreamReader reader= new StreamReader(strm);//,System.Text.Encoding.Unicode);
           
               
                return reader.ReadToEnd();
            }
            catch
            {
                return null;
            }
                                                                                                                                     
        }
        private void ExecuteSql(string DatabaseName , string Sql)
        {

            SqlConnection sqlConnection1 = new SqlConnection("user id=sa;password="+strPass+";database=master;server=(local)") ;
            SqlCommand Command  = new SqlCommand(Sql, sqlConnection1);
            Command.Connection.Open();
            Command.Connection.ChangeDatabase(DatabaseName);
           
            try
            {
                Command.ExecuteNonQuery();
            }

            finally
            {
                // Finally, blocks are a great way to ensure that the connection
                Command.Connection.Close();
            }
       
        }
        protected void  AddDBTable(string strDBName )
        {
            try
            {
                //Create the database.
                ExecuteSql("master", "CREATE DATABASE " + strDBName);
                // Create the tables.
                ExecuteSql(strDBName, GetSql("sql.txt"));
            }
            catch
            {
               
            }
        }

asp.net web service应用程序的生成、发布+在本地iis服务器部署,调用

对VS2012来说,发布Web是一件相当容易的事情,下面我详细介绍一下Web网站发布的具体过程。 第一步:在解决方案资源管理器中右击Web应用程序名(例如:newsSystem)——》点击发布,...

win7下安装IIS7.0及部署VS2010 ASP.NET程序网站的相关问题

win7下安装IIS7.0及部署VS2010 ASP.NET程序网站的相关问题         新装了win7系统,VS2010,安装IIS管理服务器时,出现了很多问题,搜集网上相关的资料...

ASP.NET MVC4 下部署子级非MVC应用程序问题

由于已明确禁止所请求的页类型,无法对该类型的页提供服务。扩展名“.cshtml”可能不正确...

在普通文件夹下部署ASP.NET程序的方法

在普通文件夹下部署ASP.NET程序的方法 问题描述: 一个asp.net的web程序(路径为d:\proj\WebTest),如果使用一个虚拟目录(例如:virtualapp)指向它(d:\pr...
  • zztfj
  • zztfj
  • 2011年10月14日 17:13
  • 704

win7下安装IIS7.0及部署VS2010 ASP.NET程序网站的相关问题

win7下安装IIS7.0及部署VS2010 ASP.NET程序网站的相关问题         新装了win7系统,VS2010,安装IIS管理服务器时,出现了很多问题,搜集网上相关的资料...

部署一个安全的ASP.NET MVC 5应用程序成员、OAuth和SQL Azure网站数据库

推特 发现更多的资源为这些服务: 网站 sql数据库 发现更多的资源: net 部署一个安全的ASP.NET  MVC 5应用程序成员、OAuth和SQL Azure网站数...
  • Litt_J
  • Litt_J
  • 2015年01月06日 02:14
  • 2316

部署ASP.net MVC程序到IIS

转:http://www.cnblogs.com/piyeyong/archive/2012/08/15/2640004.html 在网上找到一个table,列举了不同的操作系统对应的IIS版本以及...
  • jackljf
  • jackljf
  • 2014年12月02日 19:23
  • 460

IIS6.0 asp.net 应用程序部署 Gzip压缩功能

http://www.cnblogs.com/conan87810/archive/2009/02/13/1389684.html 今天浏览网页无意间发现了Gzip,听说在iis6.0下自带...

asp.net mvc4应用程序发布、部署、常见问题

http://www.cnblogs.com/wendus/p/6709226.html 这里为大家介绍asp.net mvc4应用程序发布、部署、常见问题,借鉴了网络上各位大神的参...

将ASP.NET Web应用程序部署到Windows Azure Web Site和SQL 数据库

此教程演示如何在Visual Studio 2012或者 Visual Studio 2012 for Web Express里使用Publish Web向导将一个ASP.NET web应用程序部...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ASP.NET程序部署
举报原因:
原因补充:

(最多只允许输入30个字)