[英]Namespace for Referenced DLL is Available in Controllers/Models, Not in Views
我有一个 MVC 项目,它在另一个项目中引用了自定义 DLL。 DLL 被称为“Web”,在“模型”中有我需要的类。
我已经在项目中需要它的地方添加了 DLL 作为参考,并且在项目的控制器和模型中,它是可用的。 我可以使用这条线:
using Web.Models.Base;
和
using Web.Models.AppToolKit
这些类中的所有对象都是可用的。
但是在视图中,在同一个项目中,Web 命名空间根本不可用。 我得到:
Severity Code Description Project File Line Suppression State
Error CS0246 The type or namespace name 'Web' could not be found (are you missing a using directive or an assembly reference?)
当我使用我在视图中的项目中创建的 model 时,它继承自参考 DLL 并且编译没有问题,我得到错误:
Error CS0012 The type 'BasicNetPageModel' is defined in an assembly that is not referenced. You must add a reference to assembly 'Web, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'.
即使引用了 DLL,并且在同一项目的模型和控制器中都可以使用。
我正在使用 VS 2019。我已尝试多次删除/重新添加引用和清理/重建。
我尝试添加:
<add namespace="TASWeb.Models.Base"/>
在 web.config 中。
任何想法?
看起来问题是第二个 DLL,它是从第一个 DLL 中引用的。
该项目设置为 x86。 我将它设置为 ANY CPU,重新编译,然后重新编译第一个 DLL,然后有问题的项目能够识别命名空间。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.