【问题标题】:Is there a better way to manage using namespace directives in the head of a file有没有更好的方法来管理文件头中的命名空间指令
【发布时间】:2014-11-10 13:35:52
【问题描述】:

我是一个完全的新手。我看到页面顶部的这些 using 语句或引用很难管理。有没有办法在类或其他文件中引用这些,并在表单代码或逻辑文件的顶部有一个语句?

例如:做这个

using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Drawing;
using System.IO;
using System.IO.Packaging;
using System.Linq;
using System.Reflection;
using System.ServiceProcess;
using System.Text;
using System.Threading;
using System.Xml;
using System.Xml.Linq;
using System.Xml.Schema;
using System.Xml.XPath;
using System.Xml.Xsl;
using System.Windows.Forms;

进入这个

using Class : FileName

或其他形式的参考。

由于没有完全映射程序,我经常将内容移至逻辑文件。有时我会收到诸如Are you missing a using directive or namespace 之类的错误。通常我会发现我缺少创建函数的位置,但缺少函数现在所在的位置。我保留了一个主文件,并在发生这种情况时将其复制到所有文件中。通常会清除错误。

看来一定有更好的办法。

提前谢谢你。我感谢我能得到的任何意见和帮助。祝你有美好的一天!

【问题讨论】:

  • 最实用的解决方案是让visual studio负责使用指令。使用 remove unsed usings 和 sort usings 功能来组织您的 usings。
  • 您可以在 Visual Studio 中整理您的使用,以便它们只包含实际需要的使用编辑 => 智能感知 => 组织使用 => 删除未使用的使用。
  • Resharper 使移动内容更容易,因为它也可以使用语句移动或建议添加它们。
  • 如果您尝试使用缺少的东西,通常会出现错误,并且您会在其上获得一个 IIntellisense 标记,您可以将其下拉以完全限定类型,或导入相关的命名空间.
  • 如果您将光标放在给您带来问题的函数或声明的末尾,然后按 Ctrl + 。 [句号] VS 会找出您缺少的内容,并为您提供添加缺少的 using 语句的选项。

标签: c# winforms file-management using-directives


【解决方案1】:

ReSharper 使这变得微不足道(几乎到了危险的地步),它允许您使用 Alt+Enter 插入它们并突出显示未使用的那些。 VS 还通过右键单击提供基本支持。基本上,我从来没有觉得需要您描述的功能 - 据我所知,它不存在。

我倾向于按字母顺序将我的分类分为两类:首先是 .NET 的 System 命名空间,然后是其他所有内容。第三个类别也可以将内部命名空间与外部命名空间分开,但这在大多数情况下往往有点矫枉过正。

但是,请采用以下方法:如果您确实有那么多 using 语句,则该代码文件的内容(假设您使用命名空间声明之外的声明)可能做得太多TM。如果你的类型目标明确,职责尽可能少(阅读:瞄准一个),那么无论如何你不会有很多 using 语句。

这种幼稚的代码异味警报大多有效,但您会遇到使用声明激增的奇怪类型,因此不要将其视为某种包罗万象的东西。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-05
    • 1970-01-01
    • 2011-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-11
    • 1970-01-01
    相关资源
    最近更新 更多