【问题标题】:Microsoft Visual Studio 2017 won't autocomplete newly added NuGet packagesMicrosoft Visual Studio 2017 不会自动完成新添加的 NuGet 包
【发布时间】:2018-01-19 16:27:50
【问题描述】:

我最近在我的项目中添加了新的 NuGet 包(和引用),但是当我开始输入我的代码时,VS 不会自动完成,甚至不会为我提供现在应该可用的类。因此,如果我想从新添加的包中引用某个类,我必须手动输入“使用 NewlyAddedPackage...”。这很烦人,我不能像这样继续我的工作。有什么建议为什么会发生这种情况,我该如何解决?

明确地说,我为 FluentNHibernate 安装了 NuGet 包,当我尝试编写如下代码时:

namespace ConsoleApp1
{
    public class Customer
    {
        public virtual string Name { get; set; }
    }

    public class CustomerMap : ClassMap<Customer>
    {
         ...
    }
}

当我开始输入 ClassMap 时...自动完成不会提供来自 FluentNHibernate.Mapping 命名空间的 ClassMap。 NuGet 包已正确安装在项目中,我可以在 Project>References 列表中看到它。请帮忙。

【问题讨论】:

    标签: c# nuget visual-studio-2017 nuget-package


    【解决方案1】:

    完成列表是Visual C# IntelliSense 功能的一部分,它工作正常,只是不完全符合您的预期。

    在当前文件完成列表中没有using 指令的情况下,为您提供global 命名空间中声明的所有内容。您可以使用完全限定名称 global::FluentNHibernate.Mapping.ClassMap 访问新添加的类型,这在大多数情况下与 FluentNHibernate.Mapping.ClassMap 相同。有关例外情况,请参阅 MSDN 上的 Use the Global Namespace Alias 文章。为了使事情更容易,using 指令通常用于从某个命名空间导入类型,因此您不必完全限定类型的名称。 Visual Studio 不会自动添加 using 指令。您必须手动添加它们或利用 Visual Studio 的 Quick Actions 功能(灯泡,默认组合键是 CTRL+.):

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-12
      • 1970-01-01
      • 2017-05-03
      • 1970-01-01
      • 1970-01-01
      • 2017-11-13
      相关资源
      最近更新 更多