开发者社区> 杰克.陈> 正文

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目录补上这些档案,就可以顺利运作啰!

 

 

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
win2003 sp2+iis 6.0上部署.net 2.0和.net 4.0网站的方法
网站环境 IIS6.0,操作系统Windows server2003 sp2,服务器之前已经部署了.net 2.0和asp的网站,现在要部署新开发的.net 4.0网站.本来认为很简单,却遇到了很多问题,下面详细描述下过程: 1.
935 0
.net网站建设页面提交后css失效的问题
问题描述:.net网站建设在提交后出现css部分失效,如div位置,字体大小。问题解决:原因是,过去的提示语句我们一律使用了Response.write("alert("***")"),用了.write输出 js脚本.alert等破坏了css 加载。
928 0
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
23639 0
SVN(TortoiseSVN)提交时忽略bin跟obj目录
原文:SVN(TortoiseSVN)提交时忽略bin跟obj目录 SVN(TortoiseSVN)提交时忽略bin和obj目录 一般协作开发情况下,有意思无意将bin和obj目录添加到版本管理中是很烦人的事儿,在VS中不断地编译程序集和提交将带来版本暴增问题.
987 0
linux中 ~ 表示的是什么目录?
~ 表示代码主目录,也就是当前登录用户的用户目录。比如:我登录用户是chencd ~~ 代表的就是 /home/chen/当然前提是有用户目录,如果没有/home/chen目录的话情况就比较多了。总之cd ~再pwd就知道了。
827 0
5分钟快速安装ASP.NET Core 网站运行环境
简介 ASP.NET Core 是新一代的 ASP.NET,早期称为 ASP.NET vNext,并且在推出初期命名为 ASP.NET 5,但随着 .NET Core 的成熟,以及 ASP.NET 5 的命名会使得外界将它视为 ASP.NET 的升级版,但它其实是新一代从头开始打造的 ASP.NET 核心功能,因此微软宣布将它改为与 .NET Core 同步的名称,即 ASP.NET Core。
2373 0
ASP.NET Core 基本项目目录结构 - ASP.NET Core 基础教程 - 简单教程,简单编程
原文:ASP.NET Core 基本项目目录结构 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 基本项目目录结构 上一章节中我们成功创建了一个名为 HelloWorld 的 ASP.NET Core 2.1 空项目。
1349 0
.Net网站不能预编译以及不能请求的调试过程
公司内部的一个网站,Aspx的,最近莫名其妙的出现一个问题: file 'soLog.aspx' has not been pre-compiled,and cannot be requested.   这个问题只有在网站发布到服务器之后才会出现,本地一切正常,但不是每一个页面都有这一个问题...
581 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
21366 0
+关注
杰克.陈
一个安静的程序猿~
10425
文章
2
问答
文章排行榜
最热
最新
相关电子书
更多
JS零基础入门教程(上册)
立即下载
性能优化方法论
立即下载
手把手学习日志服务SLS,云启实验室实战指南
立即下载