通过使用“发布网站”工具部署网站项目

  • 准备网站源文件
  • 在vs生成发布文件
  • 配置IIS
 
.NET Framework 4

分步说明如何使用 Visual Studio 的“发布网站”工具来编译网站项目,然后将输出复制到指定位置。

如果要将网站项目部署到服务器中,可以使用 Visual Studio 附带的“发布网站”工具。“发布网站”工具对网站中的页和代码进行预编译,然后将编译器输出写入指定的文件夹。然后可以将输出复制到目标 Web 服务器,并从目标 Web 服务器中运行应用程序。

注意

Visual Web Developer 速成版中未提供“发布网站”工具。

如果您要部署到生产中,则可能希望阻止生产站点在部署过程中对页请求进行响应,以帮助避免更改正在进行时可能导致的错误。同时,您可能希望确保应用程序域不会在部署过程中回收多次。本演练未涵盖这些任务。有关更多信息,请参见如何:准备部署 Web 项目

注意

本主题仅适用于网站项目。有关 Web 应用程序项目与网站项目之间的差异的信息,请参见 Web 应用程序项目与网站项目

若要完成本演练,您需要:

  • Visual Studio.

    注意

    本演练假设您在首次启动 Visual Studio 时选择了“Web 开发”设置集合。有关更多信息,请参见如何:选择 Web 开发环境设置

  • 能访问 Microsoft Internet 信息服务 (IIS),以便您可测试发布网站项目的结果。在此演练中,假定您自己的计算机上已经正在运行 IIS。或者可以使用 IIS 的任何实例,但需要您拥有为其创建虚拟目录的权限。

 

准备网站源文件


如果已经在 Visual Studio 中创建了一个网站项目(例如,通过完成演练:在 Visual Studio 中创建基本网页),则可以使用该项目并转到下一节。否则,创建一个新网站项目。在此演练中,您将创建一个文件系统网站。

创建文件系统网站

  1. 打开 Visual Studio。

  2. 在“文件”菜单中单击“新建网站”。

    显示“新建网站”对话框。

  3. 在“已安装的模板”下,单击“Visual Basic”或“Visual C#”,然后选择“ASP.NET 空网站”。

  4. 在“Web 位置”框中选择“文件系统”,然后输入要保存网站网页的文件夹的名称。

    例如,键入文件夹名“C:\WebSites”。

  5. 单击“确定”。

    Visual Studio 将创建一个仅包含一个 Web.config 文件的网站项目。


在此演练中,您将创建一个包含一些控件的网页。还将创建一个将在该网页中使用的类文件。创建网页和单独的类将可以让您了解发布过程如何预编译网站的内容。

首先将创建一个新页,然后向该页添加一个按钮和标签。

创建页并添加控件

  1. 在“解决方案资源管理器”中,右击网站项目的名称,然后单击“添加新项”。

  2. 在“已安装的模板”下,选择首选编程语言,然后单击“Web 窗体”。

  3. 在“名称”框中键入 SamplePage.aspx。

  4. 单击“添加”。

  5. 切换到“设计”视图。

  6. 从“工具箱”的“标准”组中,将 Label 控件拖到页上。

  7. 从“工具箱”的“标准”组中,将 Button 控件拖到页上,放在 Label 控件旁边。

下一步您将创建一个只包含一个属性的简单类的源代码。您将在页的代码中使用该类。

创建类

  1. 在“解决方案资源管理器”中,右击网站项目的名称,指向“添加 ASP.NET 文件夹”,然后单击“App_Code”。

    在“解决方案资源管理器”中,一个名为 App_Code 的新文件夹出现在应用程序中。App_Code 文件夹是一个保留的 ASP.NET 应用程序文件夹。有关更多信息,请参见 ASP.NET Web 项目文件夹结构

  2. 右击 App_Code 文件夹,然后单击“添加新项”。

  3. 在“已安装的模板”下,单击首选使用的语言,然后单击“类”。

  4. 在“名称”框中键入 TestClass。

  5. 单击“添加”。

    Visual Studio 以指定的编程语言创建一个主干类文件。

  6. 创建一个名为 TestProperty 的属性。

    完成后,完整的类文件将类似下面这样:

    using System;
    publicclass TestClass
    {
    public TestClass() { }
    privatestring TestPropertyValue;
    publicstring TestProperty
    {
    get{ return TestPropertyValue; }
    set{ TestPropertyValue = value; }
    }
    }

现在可以在页中使用该类了。注意,不必先编译该类再使用它。

在页中使用该类

  1. 打开“SamplePage.aspx”并切换至“设计”视图。

  2. 双击 Button 控件,为该控件创建一个 Click 处理程序。

  3. 在 Click 处理程序中,创建一个 TestClass(在上一过程中创建)的实例,给 TestProperty 属性赋一个值,然后在 Label 控件中显示 TestProperty 值。

    完整的代码与如下所示内容类似:

    protectedvoid Button1_Click(object sender, EventArgs e)
    {
    TestClass testClass = new TestClass();
    testClass.TestProperty = "Hello";
    Label1.Text = testClass.TestProperty;
    }

测试网站

发布站点前可以对站点进行测试,以确保该站点按预期的方式工作。

测试网站

  1. 打开“SamplePage.aspx 页”。

  2. 按 Ctrl+F5。

    该页显示在浏览器中。

  3. 单击“按钮”,确保文本出现在 Label 控件中。

  4. 关闭浏览器。

C#-VS发布网站-准备待发布网站-摘的更多相关文章

  1. VS2013发布网站,vs2013发布

    转自:http://www.bkjia.com/Asp_Netjc/1018876.html 本文讲解网站建好之后,如何发布在服务器上面.这也是阿辉最近遇到的问题,经过不停的查找资料终于解决了,但是有 ...

  2. 如何发布及部署asp.net网站

    用vs开发完asp.net网站之后如何发布到服务器上去变成正式网站? 1.发布首先需要发布网站,这个步骤就是生成正式网站的目录(把源代码编译成.cs代码文件编译成.dll文件)详细步骤:http:// ...

  3. ASP.NET MVC3细嚼慢咽---(1)网站创建与发布

      这一节我们演示下怎样使用VS2010创建与发布MVC3建立的网站.使用VS2010创建MVC3.0网站,需要下载MVC3.0的安装包,这个大家可以去网络上下载.     1.项目创建       ...

  4. IIS7 MVC网站生成、发布

    imihiro IIS7 MVC网站生成.发布 (1)生成. 确保System.Web.Mvc.dll在bin目录下 (2)发布网站到文件系统 (3)在IIS中为网站添加应用程序池(一个虚拟目录,一个 ...

  5. Asp.net网站的简单发布

    概述 网站是由一个个页面组成的,是万维网具体的变现形式,关于万维网,网页的方面的理论知识,大家可以看一看这篇博客:万维网文档,在这里就不多说了.网站的发布要到达的一个目的就是,别人可以通过浏览器访问该 ...

  6. VS网站开发的发布部署的不同情况说明

    VS网站开发有两种模式: 1.网站模式 2.应用模式 其中,网站模式的发布,要考虑勾选“使用固定命名和单页程序集”   如下图   网站模式: 新建网站的网站模式   新建网站的网站模式第二步   应 ...

  7. sql批量修改wordpress网站的文章发布状态

    wordpress批量导入文章的时候,有些文章的状态可能会缺失,例如“mis scheduled”.draft.future等几种状态,如何用sql批量修改wordpress网站的文章发布状态呢? 点 ...

  8. ASP.NET MVC4网站搭建与发布【最新】

    ASP.NET MVC4网站搭建与发布 一些往事 2015年,仅仅大二的我怀着一颗创业之心,加入了常熟派英特,成为阳光职场平台的创始之一,并肩负了公司技术部的大梁,当时阳光职场正在从线下服务向互联网化 ...

  9. win server 2019服务器的iis配置以及网站的简单发布

    1.首先远程连接到服务器 2.打开服务器管理器 3添加角色和功能 4.安装类型:选择基于角色或基于功能的安装  →服务器角色:从服务器池中选择服务器 5.服务器角色选择Web服务器(iis) 6.功能 ...

随机推荐

  1. 8F - 采矿

    某天gameboy玩魔兽RPG.有一个任务是在一个富含金矿的圆形小岛上建一个基地,以最快的速度采集完这个小岛上的所有金矿.这个小岛上有n(0<n<1000000)个金矿,每个金矿的矿藏量是 ...

  2. Numpy array分割

    1.纵向分割 >>> import numpy as np >>> A = np.arange(12).reshape((3, 4)) >>> p ...

  3. BZOJ1179或洛谷3672 [APIO2009]抢掠计划

    BZOJ原题链接 洛谷原题链接 在一个强连通分量里的\(ATM\)机显然都可被抢,所以先用\(tarjan\)找强连通分量并缩点,在缩点的后的\(DAG\)上跑最长路,然后扫一遍酒吧记录答案即可. # ...

  4. BZOJ 2733 [HNOI2012]永无乡 - 启发式合并主席树

    Description 1: 查询一个集合内的K大值 2: 合并两个集合 Solution 启发式合并主席树板子 Code #include<cstdio> #include<cst ...

  5. 09. pt-fingerprint

    vim pt-fingerprint.txt select name, password from user where id=5;select name, password from user wh ...

  6. LoibreOJ 2042. 「CQOI2016」不同的最小割 最小割树 Gomory-Hu tree

    2042. 「CQOI2016」不同的最小割 内存限制:256 MiB时间限制:1000 ms标准输入输出 题目类型:传统评测方式:文本比较 上传者: 匿名 提交提交记录统计讨论测试数据   题目描述 ...

  7. muduo 的windows下的编译

    四处寻觅开源代码学习,适合的代码非常稀少,不适合的原因却千奇百怪. 不是使用语言特性过于老旧(c++03) 就是使用的冷僻语法(template<T> enable_share_from_ ...

  8. 微信JSSDK接口previewImage

    <div class="pics"> <img src="http://pic1.ytqmx.com:82/2015/0409/01/15.jpg!96 ...

  9. 27 isinstance与issubclass、反射、内置方法

    isinstance与issubclass issubclass:判断子类是否属于父类,是则返回True,否则返回False isinstance:判断对象是否属于类,是则返回True,否则返回Fal ...

  10. rbenv安装本地ruby安装包

    cd .rbenv mkdir cache #把安装包拷进cache cd cache rbenv install 版本号