ASP.NET MVC3应用程序的构建和部署支招

日期: 2012-06-28 来源:TechTarget中国 英文

  最近我们发布了一些新的Web产品 – 包括ASP.NET MVC 3。至今为止,我们已经获得了大量的反馈。有几个朋友在问我一个问题:“我的网站托管服务提供商目前还不支持ASP.NET MVC 3 – 你知道他们将来什么时候会安装吗?”好消息是,您不必等他们在Web服务器上安装ASP.NET MVC3。只要您的网站托管服务提供商支持.NET 4,那么您现在就可以构建和部署ASP.NET MVC3应用程序了-不用托管供应商做任何事。

  下面的文章介绍如何启用此功能。

  一些背景:

  我们支持两种方式使您可以使用一台机器上的ASP.NET MVC3组件:

  1、在一台机器上,将ASP.NET MVC 3组件安装在一个集中的地方,WEB项目在那里引用这些组件

  2、把ASP.NET MVC 3的组件复制到您的Web项目的bin文件夹下,WEB项目在那里引用这些组件

  第一种方法是我们使用Visual Studio中使用的默认方法,这使得我们可以更容易为ASP.NET MVC 3提供升级服务(当发现BUG的时候)。

  第二种方法也是得到了完全支持,没有在服务器上安装ASP.NET MVC3,也可以使用它。

  你只要把ASP.NET MVC的组件放在你的WEB程序的bin目录中,然后把整个Web程序拷贝到FTP(WEB服务器)上,它就可以工作了。

  如果您的网站托管服务提供商还没有在他们的服务器上安装ASP.NET MVC 3,那么您应该使用第二种方法。

  方法1:基于GAC引用ASP.NET MVC组件

  当您在计算机上安装ASP.NET MVC 3的时候,一些组件会自动注册到GAC中(全局程序集缓存)。
  GAC提供一个集中的地方供安装和升级(通过Windows更新).NET程序集。因此ASP.NET MVC3项目默认在这里引用程序集。如果你复制一个普通的ASP.NET MVC 3项目(使用默认的方法引用ASP.NET MVC3的程序集)到一台没有安装ASP.NET MVC3的机器上,当你运行应用程序时,会看到一个类似的错误信息:

ASP.NET-MVC3应用程序的构建和部署支招

  上述错误表示,

  至少有一个运行ASP.NET MVC 3所需的程序集在GAC中找不到。

  在机器上安装ASP.NET MVC 3就能解决这个问题,

  让您的应用程序正常运行。

  方法2:基于 Bin目录中引用ASP.NET MVC组件

  您的项目可以使用另一种方法

  在您的Web应用程序的bin目录中分发和引用的ASP.NET MVC3的程序集。

  这种方法的好处是,你并不需要在一台机器上安装ASP.NET MVC3,以运行基于ASP.NET MVC3 Web应用程序。

  相反,你只要复制你的web应用程序(在bin目录中包含MVC3的组件)到 .NET4服务器上,它就会运行。

  这种方法是“完全信任”,“中等信任”的情景(译注:我也不知道是什么意思)

  这意味着它甚至可以和低成本共享主机供应商共事。

  无需托管服务提供商另外注册/安装/操作需要。

  使您的Web项目包含ASP.NET MVC3程序集“bin部署”是非常简单的,

  只需2分钟左右。下面是需要遵循的步骤:

  Steps to Deploy an ASP.NET MVC 3 Application to a Web Hosting Provider with Bin deployment

ASP.NET-MVC3应用程序的构建和部署支招

  译注:这个链接好像打不开,笔者提供一个方法:

  选中ASP.NET MVC引用的程序集,然后查看属性,把“复制到本地”修改为true

  asp.net mvc3需要的程序集有

  System.Web.Mvc
  Microsoft.Web.Infrastructure
  System.Web.Razor
  System.Web.WebPages
  System.Web.WebPages.Razor

  一旦配置BIN部署后,您使用ASP.NET MVC 3构建的应用程序将在任何安装.NET4的Web服务器上工作。

  只需复制到Web服务器,它就会运行。

  即使是低成本共享托管账户,你也无需托管服务供应商做任何事。

  找一个ASP.NET MVC 3网站托管服务提供商

  您可以浏览Windows Web Hosting Gallery(Windows网站托管库)找到所有支持托管服务提供商:

ASP.NET-MVC3应用程序的构建和部署支招

  Windows网站托管库允许您通过不同国家和服务水平来筛选/浏览托管服务。

  它还能让您轻松过滤“共享主机”,“虚拟主机”和“专用主机”供应商。

  “共享主机”是指在你没有管理员权限的远程服务器上,提供单一的Web服务器。

  “虚拟主机”供应商在一个远程服务器上提供给你虚拟机 – 通常通过操作系统管理权限和管理的远程终端服务器来访问。

  “专用主机”供应商提供您一个完整的物理服务器,通常也提供操作系统的管理员权限和远程终端支持。

  基于Windows的网络托管的价格现在是非常符合成本效益的,共享主机低至$2.75/月,虚拟主机提供的报价$23/月。上述主机都能通过使用 bin部署方法来运行ASP.NET MVC 3。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

相关推荐

  • 八个超实用的jQuery技巧攻略

    jQuery是JavaScript最好的库之一,主要用于制作动画、事件处理,支持Ajax及HTML脚本客户端。文中分享了8个超实用的jQuery代码技巧攻略,希望你会喜欢。

  • HTML5强大功能背后的安全陷阱

    尽管HTML5使网站的功能更为强大,但开发人员需充分利用其新的技术特征来提高网站的安全性,使用不当会带安全问题,你知道吗?

  • 前端页面开发之Node.js初学者指南

    Node.js是刚刚兴起的一个概念,你对它的了解有多少?Node.js的意义是什么,它是怎么发展起来的?Node.js的作用是怎样的呢?

  • JavaScript解析:让搜索引擎看到更真实的网页

    我们都知道期的搜索引擎没有相应的处理能力,会导致很多问题。引入JavaScript解析的目的,可以使搜索引擎可以更为清晰的了解用户实际打开该网页时看到的效果。