【问题标题】:Namespaces not recognized in ASP.NET 5 MVC6 appASP.NET 5 MVC6 应用程序中无法识别的命名空间
【发布时间】:2016-05-21 12:21:31
【问题描述】:

我正在尝试使用 MVC 6 的 ASP.NET 5,但有一些问题。 使用 Visual Studio 2015 通讯

我在命名空间 MyApp.wwwroot.Models 下创建了一个模型。 然后是命名空间 MyApp.wwwroot.Service 下的服务。这里我参考我的模型。它只显示为黑色,而不是蓝色。它也没有快速动作或波浪线。当我构建它时,它显示“构建成功”。当我在控制器中添加对 Microsoft.AspNet.Mvc 的引用时,我遇到了同样的问题。当我创建一个新控制器并从 Controller 继承时。我也有同样的问题。。

这是 VS 还是有什么问题?

【问题讨论】:

    标签: asp.net-mvc visual-studio asp.net-core-mvc visual-studio-2015


    【解决方案1】:

    您似乎正试图将代码放在wwwroot 文件夹下。 ASP.Net Core(以前的 ASP.Net 5)中的 wwwroot 文件夹用于托管静态内容,这些文件不会被解析或编译为 C# 代码,而是作为您想要提供的静态内容(例如 html/css /javascript 文件)。如果是这种情况,将这些文件移出 wwwroot 文件夹应该可以解决此问题。

    【讨论】:

      【解决方案2】:

      在您的 FishtankApp.Services 命名空间中工作时,您需要公开您的模型命名空间。这是通过在您希望使用它的源代码文档的顶部添加以下 using 声明来完成的:

        using FishTankApp.Models ;
      

      对于您希望使用的任何超出您正在工作的当前命名空间范围的内容也是如此。

      【讨论】:

      • 您好,感谢您的回复。我知道我需要这样做。正如您在第一个屏幕截图中看到的那样,我已经为服务完成了这项工作。问题是 VS 似乎无法识别我的命名空间。氪
      • 正确,但是您在 snipit 中的使用只会暴露“服务”,而不是“模型”。要同时使用它们,它们都必须通过 using 暴露出来。
      • 感谢您的回复。我添加了新图像。正如你所看到的那样,用途就在那里。问题是 VS 无法识别它们或解析命名空间中的类,如图 3 所示。它不会将类染成蓝色:IntHistoryModel
      • 尝试使用完全限定的类名来验证您拥有所有命名空间组件。 IE IEnumerable
      猜你喜欢
      • 2019-12-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-21
      • 1970-01-01
      • 2012-05-07
      • 2011-10-05
      • 2019-12-19
      相关资源
      最近更新 更多