微软ASP.NET站点部署指南(1):部署介绍

2024-08-29 23:38

本文主要是介绍微软ASP.NET站点部署指南(1):部署介绍,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1. 综述

该系列教程指导你如何将一个ASP.NET web 程序部署到第三方的主机提供商机器上。部署的方式用的是Visual Studio的one-click发布。首先部署到开发环境的IIS上进行测试,然后再部署到生产环境(第三方的主机提供商)上。

该系列总共包括11个章节和一个troubleshooting章节:看来内容很多,有点晕吧?其实,生产环境部署的基本流程在本系列里只占很小一部分,但是在现实的环境中,了解一些看似很小但非常重要的信息是非常必要的——例如,设置目标服务器上某个文件夹的权限。因此,在这个教程中,我们包含了很多这种信息,希望你能利用这些信息成功部署你的系统。

 

该系列教程是连续的,不是独立章节的。不过如果某个章节确实和你没影响的话,也可以直接学习下一章(不过,学习的时候可能会有些影响)。

 

阅读对象

该教程是为中小型公司的ASP.NET开发人员准备的,或者是如下情况:

  1. 没有使用持续集成(自动编译和部署)系统的
  2. 生成环境是共享的第三方提供商
  3. 超人型的(一人承担了开发,测试,部署工作)

企业环境里,几乎都使用了持续集成,并且生成环境都是自己的服务器。不同的人有不同的角色。关于这种情况的部署我们将来可能会有另外的教程去讲,与此同时,关于更多企业部署的信息可以访问:ASP.NET Deployment Content Map。

任何规模的组织都可以将程序部署到Windows Azure云上,关于Windows Azure部署的文章,请参考:Cloud Development。

 

教程中的第三方主机提供商

该教程指导你如何在一个主机提供商那里建立账户,这里我们特地选定了一个提供商以便可以很直观的来体验一下部署的流程。每个提供商都会不同的功能以及部署的经验技巧。该教程描述的流程是整个流程中非常通用的步骤。

我们使用的提供商是Cytanium.com,在教程里使用不代表认可或者推荐该提供商。

 

Web Application项目和Web Site项目

Contoso University是一个Visual Studio web application项目,该教程的大部分部署方法和工具都不是基于Web Site项目的,关于如何部署Web site项目,请访问:ASP.NET Deployment Content Map。

 

ASP.NET Web Forms和ASP.NET MVC

Contoso University是一个ASP.NET Web Forms项目,但该教程的所有的东西也都适用于ASP.NET MVC项目,因为Visual Studio MVC项目是另外一种形式的web application项目。唯一不同的是,如果你的主机不支持ASP.NET MVC或者不支持你的MVC版本,那你需要做额外的工作将MVC的程序集部署到你的bin目录下。

 

编程语言

Sample程序使用C#开发,但不要求你会C#,教程里展示的部署技术和语言无关。

 

Troubleshooting

部署的时候如果发现问题,或者部署的站点运行不正常而错误消息里又找不到线索,或者不能说明如何解决它。为了帮你解决一些常见的问题,第12章提供了troubleshooting 引用列表,如果在看教程做练习的时候发现错误,请务必check该章节。

 

欢迎留言

欢迎大家的留言,当教程进行更新的时候,会把大家的一些好的建议和提出的错误都更新到新版本里。

2. 先决条件

开始之前,确保你的电脑安装了如下软件:

  • Windows 7
  • Visual Studio 2010 SP1或Visual Web Developer Express 2010 SP1. (安装这个的话,下面的就不用安装了,因为 SP1以及集成了。)
  • Microsoft Visual Studio 2010 SP1 Tools for SQL Server Compact 4.0

为了完成程序,可能还需要其他软件,不过没必要现在都安装。如果需要用到的话,该教程会告诉你安装的步骤。

 

3. 下载Sample程序

下载Sample程序

该教程部署的程序叫Contoso University,已经帮你创建好了。它是一个非常简单的大学网站,和Entity Framework tutorials on the ASP.NET site教程里的程序是一样的。

 

如果上述需要软件都安装好了,下载Contoso University程序。压缩包里包含了该项目的多个版本和该教程的英文版本PDF文件。开始学习用ContosoUniversity-Begin,想看到最终程序的结果请用ContosoUniversity-End,想看第10章迁移数据到正式的SQL Server以后的效果请使用ContosoUniversity-AfterTutorial09。

 

你可以保存ContosoUniversity-Begin项目到任何目录来用,默认目录是:C:\Users\<username>\Documents\Visual Studio 2010\Projects

(教程里的截图显示的项目是放在C盘的root目录里)

启动Visual Studio2010,打开项目,Ctrl+F5运行。

 

通过网站上的menu bar你可以访问如下功能:

  1. 显示student statistics统计 (About 页面)
  2. 显示,编辑,删除,添加students.
  3. 显示,编辑courses课程
  4. 显示,编辑instructors讲师
  5. 显示,编辑departments部门

下面是比较典型的页面:

 

 

 

4. 查看影响部署的程序功能

下面列出的程序功能将影响到如何部署以及必须部署的内容,在接下来的章节,会对每个功能都详细讲解:

  1. Contoso University使用SQL Server Compact数据库存储数据,该数据库包含测试数据和生产环境数据,在部署到生产环境时需要将测试数据排除。
  2. 程序使用ASP.NET membership来存储数据到SQL Server Compact数据库。程序有一个管理员账户可以有权访问受限制的信息。你需要部署带有一个管理员账户的membership 数据库(不包括测试账户)。
  3. 由于程序的数据库和membership数据库都使用SQL Server Compact,除了部署这些数据库,还需要部署SQL Server Compact数据库引擎到第三方主机上。
  4. 程序使用了ASP.NET Universal Provider来保持数据到数据库中,所以这些provider的程序集也需要和程序一起部署。
  5. 程序使用了Entity Framework 4.1 (Code First)来访问数据,所以Entity Framework 4.1程序集也需要和程序一起部署。
  6. 程序使用了第三方的错误日志和报表工具。该工具的程序集也需要和程序一起部署。该工具会将日志写入XML文件到一个文件夹,所以需要确保运行该网站的ASP.NET账户对该文件夹拥有写权限,并且部署的时候排除这个文件夹(否则的话,测试环境的XML日志文件都会被部署到生产环境)。
  7. 程序用到了的Web.config的一些设置,这些设置在不同的环境有不同的值,所以在部署的时候需要更新这些设置,另外还有一些设置因为build配置不同也需要更新(Debug或Release)。
  8. Visual Studio解决方案里包含了一个类库项目,只需要部署该项目生产的程序集而不需要部署项目本身(例如:cs文件)。

本章节,你下载了sample程序并且查看了影响部署的程序功能,接下来的章节是准备设置一些部署的参数使得部署的一部分步骤自动运行,其它的则需要手工来做。

这篇关于微软ASP.NET站点部署指南(1):部署介绍的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1119182

相关文章

闲置电脑也能活出第二春?鲁大师AiNAS让你动动手指就能轻松部署

对于大多数人而言,在这个“数据爆炸”的时代或多或少都遇到过存储告急的情况,这使得“存储焦虑”不再是个别现象,而将会是随着软件的不断臃肿而越来越普遍的情况。从不少手机厂商都开始将存储上限提升至1TB可以见得,我们似乎正处在互联网信息飞速增长的阶段,对于存储的需求也将会不断扩大。对于苹果用户而言,这一问题愈发严峻,毕竟512GB和1TB版本的iPhone可不是人人都消费得起的,因此成熟的外置存储方案开

性能测试介绍

性能测试是一种测试方法,旨在评估系统、应用程序或组件在现实场景中的性能表现和可靠性。它通常用于衡量系统在不同负载条件下的响应时间、吞吐量、资源利用率、稳定性和可扩展性等关键指标。 为什么要进行性能测试 通过性能测试,可以确定系统是否能够满足预期的性能要求,找出性能瓶颈和潜在的问题,并进行优化和调整。 发现性能瓶颈:性能测试可以帮助发现系统的性能瓶颈,即系统在高负载或高并发情况下可能出现的问题

水位雨量在线监测系统概述及应用介绍

在当今社会,随着科技的飞速发展,各种智能监测系统已成为保障公共安全、促进资源管理和环境保护的重要工具。其中,水位雨量在线监测系统作为自然灾害预警、水资源管理及水利工程运行的关键技术,其重要性不言而喻。 一、水位雨量在线监测系统的基本原理 水位雨量在线监测系统主要由数据采集单元、数据传输网络、数据处理中心及用户终端四大部分构成,形成了一个完整的闭环系统。 数据采集单元:这是系统的“眼睛”,

Hadoop数据压缩使用介绍

一、压缩原则 (1)运算密集型的Job,少用压缩 (2)IO密集型的Job,多用压缩 二、压缩算法比较 三、压缩位置选择 四、压缩参数配置 1)为了支持多种压缩/解压缩算法,Hadoop引入了编码/解码器 2)要在Hadoop中启用压缩,可以配置如下参数

阿里开源语音识别SenseVoiceWindows环境部署

SenseVoice介绍 SenseVoice 专注于高精度多语言语音识别、情感辨识和音频事件检测多语言识别: 采用超过 40 万小时数据训练,支持超过 50 种语言,识别效果上优于 Whisper 模型。富文本识别:具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。高效推

Retrieval-based-Voice-Conversion-WebUI模型构建指南

一、模型介绍 Retrieval-based-Voice-Conversion-WebUI(简称 RVC)模型是一个基于 VITS(Variational Inference with adversarial learning for end-to-end Text-to-Speech)的简单易用的语音转换框架。 具有以下特点 简单易用:RVC 模型通过简单易用的网页界面,使得用户无需深入了

poj 1258 Agri-Net(最小生成树模板代码)

感觉用这题来当模板更适合。 题意就是给你邻接矩阵求最小生成树啦。~ prim代码:效率很高。172k...0ms。 #include<stdio.h>#include<algorithm>using namespace std;const int MaxN = 101;const int INF = 0x3f3f3f3f;int g[MaxN][MaxN];int n

图神经网络模型介绍(1)

我们将图神经网络分为基于谱域的模型和基于空域的模型,并按照发展顺序详解每个类别中的重要模型。 1.1基于谱域的图神经网络         谱域上的图卷积在图学习迈向深度学习的发展历程中起到了关键的作用。本节主要介绍三个具有代表性的谱域图神经网络:谱图卷积网络、切比雪夫网络和图卷积网络。 (1)谱图卷积网络 卷积定理:函数卷积的傅里叶变换是函数傅里叶变换的乘积,即F{f*g}

Java 创建图形用户界面(GUI)入门指南(Swing库 JFrame 类)概述

概述 基本概念 Java Swing 的架构 Java Swing 是一个为 Java 设计的 GUI 工具包,是 JAVA 基础类的一部分,基于 Java AWT 构建,提供了一系列轻量级、可定制的图形用户界面(GUI)组件。 与 AWT 相比,Swing 提供了许多比 AWT 更好的屏幕显示元素,更加灵活和可定制,具有更好的跨平台性能。 组件和容器 Java Swing 提供了许多

如何在Visual Studio中调试.NET源码

今天偶然在看别人代码时,发现在他的代码里使用了Any判断List<T>是否为空。 我一般的做法是先判断是否为null,再判断Count。 看了一下Count的源码如下: 1 [__DynamicallyInvokable]2 public int Count3 {4 [__DynamicallyInvokable]5 get