繁体   English   中英

引用的 DLL 的命名空间在控制器/模型中可用,在视图中不可用

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM