【翻译】在没有安装ASP.NET MVC3的服务器上运行ASP.NET MVC3的程序-scottgu

简介: 原文地址: http://weblogs.asp.net/scottgu/archive/2011/01/18/running-an-asp-net-mvc-3-app-on-a-web-server-that-doesn-t-have-asp-net-mvc-3-installed.aspx 为了更符合中文阅读习惯,我对原文做了小幅度修改   最近我们发布了一些新的Web产品 - 包括ASP.NET MVC 3。

原文地址:

http://weblogs.asp.net/scottgu/archive/2011/01/18/running-an-asp-net-mvc-3-app-on-a-web-server-that-doesn-t-have-asp-net-mvc-3-installed.aspx

为了更符合中文阅读习惯,我对原文做了小幅度修改

 

最近我们发布了一些新的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的机器上,

当你运行应用程序时,

会看到一个类似的错误信息:

image

上述错误表示,

至少有一个运行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 MVC引用的程序集,然后查看属性,把“复制到本地”修改为true

image

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网站托管库)找到所有支持托管服务提供商:
image

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

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

“共享主机”是指在你没有管理员权限的远程服务器上,提供单一的Web服务器。
“虚拟主机”供应商在一个远程服务器上提供给你虚拟机 - 通常通过操作系统管理权限和管理的远程终端服务器来访问。

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

基于Windows的网络托管的价格现在是非常符合成本效益的,

共享主机低至$2.75/月,虚拟主机提供的报价$23/月。

上述主机都能通过使用\ bin部署方法来运行ASP.NET MVC 3。

 

摘要
ASP.NET MVC 3的应用程序可以部署到任何拥有.NET4的Web服务器,

而不必等待托管服务提供商来安装ASP.NET MVC 3组件。

通过\ bin部署ASP.NET MVC3程序集,

只需使用上面的步骤就可转换您的项目,

那么你就可以复制你的应用程序到任何ASP.NET4服务器上。

目录
相关文章
|
1月前
|
C#
一个.NET开源、轻量级的运行耗时统计库 - MethodTimer
一个.NET开源、轻量级的运行耗时统计库 - MethodTimer
|
26天前
|
前端开发 Android开发
WinForm 直接运行 Admin.NET
本文介绍了如何将 Admin.NET 以 WinForm 桌面程序模式运行,简化了手动配置 Web 服务的过程,便于演示和作为单机软件使用。通过添加特定 NuGet 包、修改 `Program.cs` 和 `Form1.cs` 文件,并调整项目配置,最终实现了在 WinForm 中嵌入 WebView 组件显示 Admin.NET 界面的效果。
22 0
WinForm 直接运行 Admin.NET
|
3月前
|
开发框架 前端开发 .NET
VB.NET中如何利用ASP.NET进行Web开发
在VB.NET中利用ASP.NET进行Web开发是一个常见的做法,特别是在需要构建动态、交互式Web应用程序时。ASP.NET是一个由微软开发的开源Web应用程序框架,它允许开发者使用多种编程语言(包括VB.NET)来创建Web应用程序。
67 5
|
4月前
|
开发框架 .NET 开发工具
【Azure 应用服务】App Service 的.NET Version选择为.NET6,是否可以同时支持运行ASP.NET V4.8的应用呢?
【Azure 应用服务】App Service 的.NET Version选择为.NET6,是否可以同时支持运行ASP.NET V4.8的应用呢?
|
4月前
|
开发框架 监控 .NET
【Azure 应用程序见解】在Docker中运行的ASP.NET Core应用如何开启Application Insights的Profiler Trace呢?
【Azure 应用程序见解】在Docker中运行的ASP.NET Core应用如何开启Application Insights的Profiler Trace呢?
|
3天前
|
弹性计算 运维 安全
阿里云轻量应用服务器与ECS的区别及选择指南
轻量应用服务器和云服务器ECS(Elastic Compute Service)是两款颇受欢迎的产品。本文将对这两者进行详细的对比,帮助用户更好地理解它们之间的区别,并根据自身需求做出明智的选择。
|
4天前
|
SQL 弹性计算 安全
阿里云上云优选与飞天加速计划活动区别及购买云服务器后续必做功课参考
对于很多用户来说,购买云服务器通常都是通过阿里云当下的各种活动来购买,这就有必要了解这些活动的区别,同时由于活动内的云服务器购买之后还需要单独购买并挂载数据盘,还需要设置远程密码以及安全组等操作之后才能正常使用云服务器。本文就为大家介绍一下目前比较热门的上云优选与飞天加速计划两个活动的区别,以及通过活动来购买云服务器之后的一些必做功课,确保云服务器可以正常使用,以供参考。
|
7天前
|
弹性计算 安全 开发工具
灵码评测-阿里云提供的ECS python3 sdk做安全组管理
批量变更阿里云ECS安全组策略(批量变更)
|
24天前
|
存储 人工智能 弹性计算
阿里云弹性计算(ECS)提供强大的AI工作负载平台,支持灵活的资源配置与高性能计算,适用于AI训练与推理
阿里云弹性计算(ECS)提供强大的AI工作负载平台,支持灵活的资源配置与高性能计算,适用于AI训练与推理。通过合理优化资源分配、利用自动伸缩及高效数据管理,ECS能显著提升AI系统的性能与效率,降低运营成本,助力科研与企业用户在AI领域取得突破。
45 6
|
1天前
|
机器学习/深度学习 人工智能 编解码
阿里云GPU云服务器优惠收费标准,GPU服务器优缺点与适用场景详解
随着人工智能、大数据分析和高性能计算的发展,对计算资源的需求不断增加。GPU凭借强大的并行计算能力和高效的浮点运算性能,逐渐成为处理复杂计算任务的首选工具。阿里云提供了从入门级到旗舰级的多种GPU服务器,涵盖GN5、GN6、GN7、GN8和GN9系列,分别适用于图形渲染、视频编码、深度学习推理、训练和高性能计算等场景。本文详细介绍各系列的规格、价格和适用场景,帮助用户根据实际需求选择最合适的GPU实例。
下一篇
DataWorks