ASP.NET MVC 3网站BIN目录手动部署

简介: 转自 http://blog.darkthread.net/post-2011-07-08-deploy-asp-net-mvc3-bin.aspx ASP.NET MVC Application在执行时,预设会引用注册在GAC的System.Mvc.dll等程式库,但如果要部署的主机没安装ASP.NET MVC,就会产生Could not load file or assembly 'System .Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'的错误讯息。

转自 http://blog.darkthread.net/post-2011-07-08-deploy-asp-net-mvc3-bin.aspx

 

ASP.NET MVC Application在执行时,预设会引用注册在GAC的System.Mvc.dll等程式库,但如果要部署的主机没安装ASP.NET MVC,就会产生Could not load file or assembly 'System .Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'的错误讯息。

最简单的解决方法是在目的主机上安装ASP.NET MVC 3 ,但若基于某些理由(主机有很机车的软体安装原则、你曾抢了主机管理员的女友而心有嫌隙...等)无法在主机安装ASP.NET MVC 3,也可透过将必要DLL直接部署在BIN目录下解决。

找到Phil Haack写的MVC 2 手动部署提示 ,Scott Hanselman也有一篇专谈MVC 3 Razor部分的额外部署需求 ,索性把两篇的资料汇整在一起,经实测可行后,做个笔记: (虽然依Hanselman的说法, 用XCOPY部署很逊 ,在此决定引用KISS法则 ,所以...)


已安装ASP.NET MVC的机器找到以下档案(32位元OS则在C:\Program Files (x86)\Microsoft
ASP.NET目录),把它们Copy到部署机器的BIN目录下就OK啰! (注意: 主机IIS要安装SP.NET
4.0,网站也要设定使用ASP.NET 4.0)

C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\Assemblies

  • System.Web.Helpers.dll
  • System.Web.Razor.dll
  • System.Web.WebPages.dll
  • System.Web.WebPages.Razor.dll
  • System.Web.WebPages.Deployment.dll
  • Microsoft.Web.Infrastructure.dll

C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET MVC 3\Assemblies

  • System.Web.Mvc.dll
    (Phil文章中提到的System.Web.Abstractions.dll, System.Web.Extensions.dll, System.Web.Routing.dll在.NET Framework 4.0已属内建)

在部署主机的ASP.NET MVC 3的网站程式BIN目录补上这些档案,就可以顺利运作啰!

 

 

目录
相关文章
|
2月前
|
开发框架 监控 .NET
【Azure App Service】部署在App Service上的.NET应用内存消耗不能超过2GB的情况分析
x64 dotnet runtime is not installed on the app service by default. Since we had the app service running in x64, it was proxying the request to a 32 bit dotnet process which was throwing an OutOfMemoryException with requests >100MB. It worked on the IaaS servers because we had the x64 runtime install
|
3月前
|
监控 网络安全 调度
Quartz.Net整合NetCore3.1,部署到IIS服务器上后台定时Job不被调度的解决方案
解决Quartz.NET在.NET Core 3.1应用中部署到IIS服务器上不被调度的问题,通常需要综合考虑应用配置、IIS设置、日志分析等多个方面。采用上述策略,结合细致的测试和监控,可以有效地提高定时任务的稳定性和可靠性。在实施任何更改后,务必进行充分的测试,以验证问题是否得到解决,并监控生产环境的表现,确保长期稳定性。
130 1
|
3月前
|
监控 安全 API
Docker + .NET API:简化部署和扩展
Docker + .NET API:简化部署和扩展
45 0
|
3月前
|
监控 安全 API
最完美的扩展Docker + .NET API:简化部署和扩展
最完美的扩展Docker + .NET API:简化部署和扩展
101 0
|
4月前
|
开发框架 前端开发 JavaScript
ASP.NET MVC 教程
ASP.NET 是一个使用 HTML、CSS、JavaScript 和服务器脚本创建网页和网站的开发框架。
51 7
|
4月前
|
SQL 关系型数据库 数据库
七天.NET 8操作SQLite入门到实战详细教程(选型、开发、发布、部署)
七天.NET 8操作SQLite入门到实战详细教程(选型、开发、发布、部署)
|
5月前
|
开发框架 监控 安全
.NET 应用程序安全背后究竟隐藏着多少秘密?从编码到部署全揭秘!
【8月更文挑战第28天】在数字化时代,.NET 应用程序的安全至关重要。从编码阶段到部署,需全面防护以保障系统稳定与用户数据安全。开发者应遵循安全编码规范,实施输入验证、权限管理和加密敏感信息等措施,并利用安全测试发现潜在漏洞。此外,部署时还需选择安全的服务器环境,配置 HTTPS 并实时监控应用状态,确保全方位防护。
64 3
|
5月前
|
Kubernetes 监控 Devops
【独家揭秘】.NET项目中的DevOps实践:从代码提交到生产部署,你不知道的那些事!
【8月更文挑战第28天】.NET 项目中的 DevOps 实践贯穿代码提交到生产部署全流程,涵盖健壮的源代码管理、GitFlow 工作流、持续集成与部署、容器化及监控日志记录。通过 Git、CI/CD 工具、Kubernetes 及日志框架的最佳实践应用,显著提升软件开发效率与质量。本文通过具体示例,助力开发者构建高效可靠的 DevOps 流程,确保项目成功交付。
101 0
|
5月前
|
开发框架 .NET Docker
【Azure 应用服务】App Service .NET Core项目在Program.cs中自定义添加的logger.LogInformation,部署到App Service上后日志不显示Log Stream中的问题
【Azure 应用服务】App Service .NET Core项目在Program.cs中自定义添加的logger.LogInformation,部署到App Service上后日志不显示Log Stream中的问题
|
5月前
|
开发框架 .NET API
在IIS上部署ASP.NET Core Web API和Blazor Wasm详细教程
在IIS上部署ASP.NET Core Web API和Blazor Wasm详细教程
219 3