C# 插入Intellisense在VS 2017中的简化Using语句
VS2017中的AutoComplete函数建议我使用语句完全限定。 我有两个项目,结构如下(简化):C# 插入Intellisense在VS 2017中的简化Using语句,c#,visual-studio,namespaces,intellisense,using,C#,Visual Studio,Namespaces,Intellisense,Using,VS2017中的AutoComplete函数建议我使用语句完全限定。 我有两个项目,结构如下(简化): Company.Contracts IMyExample.cs Company.Core MyExample.cs 现在,当我在类中使用IMyExample时,VS2017建议我使用如下语句 using Company.Contracts 但我认为VS2017曾建议我: using Contracts 这就足够了,因为项目共享相同的主命名空间 如何配置VS2017,使其更喜欢简化
Company.Contracts
IMyExample.cs
Company.Core
MyExample.cs
现在,当我在类中使用IMyExample
时,VS2017建议我使用如下语句
using Company.Contracts
但我认为VS2017曾建议我:
using Contracts
这就足够了,因为项目共享相同的主命名空间
如何配置VS2017,使其更喜欢简化名称空间而不是完全限定的名称空间?事实上,这是相反的
提示:我以前使用过VS2019,但后来又改用了VS2017,因为测试许可证结束了,我很确定,我不必更正我的使用声明。也许在VS2019中这是可能的
也许在VS2019中这是可能的
很抱歉,答案可能是否定的,我在VS2019版本16.3.4中对其进行了测试,并确认目前不支持此行为
在您的情况下,也可以使用类似于Contracts.ClassName
的格式,而不是使用
出于这种情况下更倾向于使用完全限定命名空间的原因,假设您当前的项目公司.Core
引用了一个程序集,其根命名空间也命名为Contracts
,现在如果VS按照您的建议执行,使用合同添加
当您使用公司合同项目中的函数时,intellisense会对此感到困惑。见:
在您建议的那种情况下,VS intellisense可能会对使用Contracts的的真正含义感到困惑,另一个程序集的根命名空间是Contracts
或Company.Contracts
project?所以我认为这可能是它建议使用完全限定名称空间的一个原因
如果你确实需要一个选项来支持这个行为,我建议你可以发送一个特性请求。如果这个请求得到足够的选票,团队会考虑它。
希望我的回答能有所帮助:)