c# - MVC3 View 无法找到添加的引用类

标签 c# asp.net-mvc asp.net-mvc-3 reference

我的观点是在找到位于我的一个引用文献中的类时遇到问题。 此引用是对在项目外部构建的 dll。

View 总是报错:

The type or namespace name 'Company' could not be found (are you missing a using directive or an assembly reference)

这是 Controller 。没有问题。

using Company.Entities;

public ActionResult Find()
{
    Person test = Person.SelectByADDistinguishedName("L*", false);
    return View(test);
}

这是 View 。错误发生在 @Model 行。

@model Company.Entities.Person

@{
    ViewBag.Title = "Bob";
}

<h2>Find</h2>

我的 Views/Web.config 目前看起来像这样

  <system.web.webPages.razor>
    <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <pages pageBaseType="System.Web.Mvc.WebViewPage">
      <namespaces>
        <add namespace="System.Web.Mvc" />
        <add namespace="System.Web.Mvc.Ajax" />
        <add namespace="System.Web.Mvc.Html" />
        <add namespace="System.Web.Routing" />
        <add namespace="Company.Entities" />
      </namespaces>
    </pages>
  </system.web.webPages.razor>

我已经检查过类似的线程 one但无济于事。

这是屏幕上的消息

Line 25:     using System.Web.Mvc.Html;
Line 26:     using System.Web.Routing;
Line 27:     using Company.Entities;
Line 28:     
Line 29:     


Source File: c:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET

Files\root\49c9c7db\1f9dd5c8\App_Web_find.cshtml.a8d08dba.xro6gxci.0.cs Line: 27

如果我删除任何提及程序集的内容(从 web.config 中删除 - 没有 @using 语句)。加载时我收到相同的错误消息,但针对这一行

public class _Page_Views_Home_Find_cshtml : System.Web.Mvc.WebViewPage<Company.Entities.Person> {

最佳答案

在使用它一段时间后,我最终解决了它。

我必须在主 web.config 的程序集部分下添加程序集(而不是在 View 下)

web.config 示例。

<compilation debug="true" targetFramework="4.0">
  <assemblies>
    <add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <add assembly="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <add assembly="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <add assembly="Company, Version=2.0.31.0, Culture=neutral, PublicKeyToken=df9010405db60e6d"/>
  </assemblies>
</compilation>

感谢给我建议的人。

关于c# - MVC3 View 无法找到添加的引用类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5223262/

相关文章:

c# - MVC4中如何显示图片网格

javascript - 处理国际申请的日期时间格式

jquery - MVC3 jquery.validate.unobtrusive 覆盖选项而不编辑源代码?

c# - 关于 HL7 Listener 的几个问题

c# - 如何在 C# 中正确设置 MySQLConnection?

c# 只显示 DateTime 的时间部分

c# - 本地化无法正常工作

asp.net-mvc - EF 4.5 Code First 复合键的 MVC 脚手架错误

asp.net-mvc - 我将如何编写一个 Action 过滤器来确保每个 Post 操作都使用防伪 token ?

asp.net-mvc-3 - 在 MVC3 中使用 AutoMapper 绑定(bind)自定义属性