我正在尝试将控制器添加到我的Umbraco 7.2项目中的Controllers文件夹中(我在VS2013中创建了一个新的空ASP.NET MVC 4)但是我收到了错误
无法加载文件或程序集'ClientDependency.Core,Version = 1.7.1.2,Culture = neutral,PublicKeyToken = null`或其中一个依赖项。系统找不到指定的文件。
为什么会这样?
答案 0 :(得分:1)
通常,如果将umbraco添加到项目中,它还会将ClientDependency添加为DLL引用。您应该检查bin文件夹中是否包含这些DLL 我很确定你没有它们。
如果您的BIN文件夹中包含dll,则说明版本错误。在这种情况下,您需要更深入地阐明您的设置。
答案 1 :(得分:1)
这是Umbraco 7.2.0和7.2.1中的已知问题(可能还有其他问题)。它已在7.2.2上修复,但即使您/如果更新,您仍可能遇到此问题。
让不遵循以下解决方法,因为它会使您的网站面临风险。 阅读本文: http://umbraco.com/follow-us/blog-archive/2015/2/5/security-alert-update-clientdependency-immediately
建议的解决方法是在程序包管理器控制台中运行以下命令:
Uninstall-Package ClientDependency -Force
卸载完成后:
Install-Package ClientDependency -Version 1.7.1.2
来源:http://issues.umbraco.org/issue/U4-5996和https://our.umbraco.org/forum/getting-started/installing-umbraco/38333-Error-creating-Controller-in-Umbraco-v6?p=2#comment169649
你唯一的两个选择是:
更新到Umbraco> = 7.2.2:Update-package UmbracoCms
将控制器添加为类并手动从Controller
或UmbracoController
(或您要使用的其他基本控制器类)继承
答案 2 :(得分:0)
今晚我遇到了同样的问题。我将packages.config中的版本更改为以下内容:
<package id="ClientDependency" version="1.7.1.2" targetFramework="net45" />
<package id="ClientDependency-Mvc" version="1.7.0.4" targetFramework="net45" />
确保bin目录匹配,你应该好好去。您可能需要在VS中关闭项目并重新打开它。如果您遇到与EntityFramework相同的问题,请更改为5.0.0并确保bin目录中的版本正确。
答案 3 :(得分:0)
将umbraco mvc升级到最新版本(v7.2.2)解决了这个问题。
我使用Nuget Package Manager v2.8.50926.663和Visual Studio 2013。
希望这也有助于你。