Web应用程序与Web网站在IIS中部署

Web应用程序与Web站点区别

  在Visual Studio可以创建 Web 应用程序项目网站项目

每种项目类型各有优缺点,要选择可以满足需要的最佳项目类型,应了解各项目类型之间的差异。

创建项目之前,必须选择合适的项目类型,原因是从一种项目类型转换到另一种项目类型并不可行。

说明:在某些情况下,无法进行选择。 例如,如果要创建ASP.NET MVC应用程序,您必须使用 Web 应用程序项目。

web应用程序可能是微软为了让程序员很好的从winform过渡到web开发而保留了。Web网站就完全要应用到web开发的。其实两者之间没有什么大的区别,自己从表象总结了一下他们的异同点。 

相同: 
1、都是设计Asp网页的。
 

2、都可以添加ASP.Net文件夹(都包括App_Browsers、App_Data、App_GlobalResources、App_LocalResources、App_Themes)。 

不同: 
1、web应用程序Default.aspx显示有两个原有文件及Default.aspx.cs和Default.aspx.designer.cs;Web网站
Default.aspx显示有一个原有文件Default.aspx.cs。 

2、web应用程序有重新生成和发布两项;Web网站只有一个发布网站。 

3、web应用程序和一般的winform没有什么区别都有引用的是命名空间等;Web网站在引用后出现一个bin文件夹那里存放dll和pdb文件。 

4、web应用程序可以作为类库被引用;Web网站则不可以作为类库被引用。 

5、web应用程序可以添加ASP.Net文件夹中 不包括bin、App_Code;Web网站可以添加ASP.Net文件夹包括bin、App_Code。 

6、web应用程序还可添加组件和类;Web网站则没有。 

7、源文件虽然都是Default.aspx.cs但是web应用程序有命名空间,多了一项System.Collections空间引用。

方案

 

优先选择Web 应用程序项目的情况:

  • 要在多个web项目之间的项目依赖项。

  • 您希望编译器为整个站点创建单个程序集。

  • 您要控制为站点生成的程序集的名称和版本号。

  • 需要避免将源代码放置在生产服务器上。

  • 需要使用 Visual Studio 中提供的自动化部署工具。

优先选择Web网站项目的情况包括:

  • 可以在单个web项目中包含C#和Visual Basic代码。 

  • 需要在 Visual Studio 中打开生产站点和使用 FTP 对其进行实时更新。

  • 不希望必须显式编译项目才能部署项目。

  • 您希望能够通过仅将新版本复制到生产服务器,或通过在生产服务器上直接编辑文件来更新生产中的各个文件。

  • 如果预编译站点,您希望能够更新各 ASP.NET 网页(.aspx文件),而无需重新编译整个网站。

  • 您希望在生产服务器上保留源代码,以便用作附加备份副本

两者区别:

部署

1、web网站部署,很简单,直接将源文件复制到iis下网站目录(或者虚拟目录)

2、web应用程序部署,参考:VS2012发布web应用程序

   右键程序项目-发布,配置各项


  自定义,根据你的项目名称输入一个名称(自动创建配置文件),

  下一步,发布方法:Web Deploy(发布到测试的IIS计算机), 服务器:localhost (发布到测试的IIS计算机,输入 localhost 或您的计算机的名称。),站点名称:IIS中建一个存放目录(hywebhyApplicationpower)(输入IIS网站和应用程序的名称。)

  下一步,配置选择Release


  在连接字符串框中,选择或输入指向目标数据库的连接字符串。      

这里要用 用户名和密码的方式登录(SQL Server方式),而不能是Integrated Security=True(windows身份验证)。否者出现


下一步,预览,发布。

参考:VS2012发布web应用程序

遇到的问题  

1、我的数据库是在vs2012中直接创建的,而本地SQL是2008版的,在将vs中创建的数据库文件附加到本地sql中时会发生错误

原因:706的版本是SQL2012的,用SQL2008附件不了的
解决办法:
在vs中打开数据库,导出其sql脚本,用记事本打开,复制在sql管理软件中执行(得先创建好数据表)
原文地址:https://www.cnblogs.com/peterYong/p/6556629.html