c# - Razor View 看不到外部组件

标签 c# asp.net-mvc razor

我在项目 1 中设置了一个扩展 WebViewPage 的类,以便我可以添加自己的扩展方法。我关注了这个页面:right here.

我有第二个项目,其中包含一个类和一个对象。本项目的.dll在项目1中被引用,并在gacutil中注册。

扩展方法使用项目 2 中的对象。每当我在页面上使用我新实现的扩展方法时,我都会收到奇妙的 CCS0012 错误。

CS0012: The type 'namespace.AppAuthentication.type' is defined in an assembly that is not referenced. You must add a reference to assembly 'namespace.AppAuthentication'

我已经能够调试并看到该对象已正确设置。即使当我将它解析为 JSON 并在 jquery 中将其显示到控制台时......一切都在那里!仅当我访问 View 中的对象时。

项目2在项目1中被引用。项目2的.dll在我的gacutil中注册。唯一可行的方法是在引用上将“copy local”设置为 true。除了,这对我来说不是一个可接受的选择。我一直在尝试阳光下的一切,以及这篇文章中列出的一切:right here.

如果有人能对此事有所了解,我将不胜感激。在我看来,Razor 似乎无法访问在 GAC 中注册的程序集。

*编辑:固定标题

最佳答案

一段时间后,我的同事找到了我们的解决方案。我试图添加命名空间,而我们需要的是添加程序集。这是在根 web.config 中完成的,而不是在 View web.config 中完成的。我们只需要添加:

<compilation debug="false" targetFramework="4.0">
 <assemblies>
  <add assembly="namespace.AppAuthentication />
 </assemblies>
</compilation>

现在我可以使用我的自定义 WebViewPage 扩展了!

关于c# - Razor View 看不到外部组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21535589/

相关文章:

c# - Nancy,TinyIoC - 卡在盒子里

javascript - Javascript 中的 MVC Razor

html - ASP.NET MVC HTML Helpers 是否被高估了?

c# - 模型未绑定(bind)到将 Null 作为值传递的操作

c# - 如何在 .net core ef 上应用上述关系的 thenInclude 条件?

c# - SelectSingleNode 中的 StackOverflow

c# - 是否可以根据表示其类型的字符串值创建对象实例?

c# - 从反射调用静态委托(delegate)?

c# - 如何在 C# 中将 CSHTML 读取为 XML 文件

asp.net-mvc-3 - MVC3 无法识别 Razor View 中的 MvcContrib 命名空间