部署 ASP.NET MVC 项目
Posted
技术标签:
【中文标题】部署 ASP.NET MVC 项目【英文标题】:Deploying ASP.NET MVC Project 【发布时间】:2017-03-07 02:18:51 【问题描述】:我正在尝试将默认 MVC 项目(来自 Visual Studio 2013)部署到远程服务器上。他们要求程序在中等信任模式下运行,我遇到了问题。我已将<trust level="Medium" originUrl="" />
添加到Web.config 的<system.web>
部分。然后,当我尝试在本地机器上运行程序时,此行会引发 SecurityException:
@html.ActionLink("Application name", "Index", "Home", new area = "" , new @class = "navbar-brand" )
这位于 _Layout.cshtml 文件中,我没有从生成的模板中修改该文件(当您创建新的 MVC 5 项目时)。
我的问题是:我需要做什么才能让我的项目在中等信任模式下运行?
【问题讨论】:
看看this answer。似乎[assembly: AllowPartiallyTrustedCallers]
属性已在 MVC5 中删除,这可能是 html 帮助程序中异常的原因
MS 还在known issues 中声明“ASP.NET MVC 5 不再支持部分信任....”(也许是时候换一个新的托管服务提供商了?)
叹气,谢谢。你是第一个能给我这个理由的人。如果您将其发布为答案,我会将其标记为答案。
Is trying to develop for Medium Trust a lost cause?的可能重复
【参考方案1】:
当前版本的 ASP.NET 现在只支持完全信任。 MS 在Release Notes: Known Issues 中声明:
ASP.NET MVC 5 不再支持部分信任......
特别是[assembly: AllowPartiallyTrustedCallers]
属性已从源代码中删除。您可以在 Levi 对is-trying-to-develop-for-medium-trust-a-lost-cause 的回答中阅读更多关于 ASP.NET 官方立场的信息,其中还包含有关为何移除支持的更多链接。
【讨论】:
以上是关于部署 ASP.NET MVC 项目的主要内容,如果未能解决你的问题,请参考以下文章
Ubuntu 上对 ASP.NET Core Mvc进行 Docker 部署