问题 (关于最佳实践的问题)为什么默认使用“System.Text”?


我每次创作课程都会看到 using System.Text 添加(除此之外) using) 默认。每次我在一段时间后删除它,因为它根据ReSharper未使用。

我错过了最佳做法吗?您经常使用该命名空间吗?在哪种情况下?

默认情况下,必须有一个原因可以引用此命名空间。

谢谢!


9266
2018-06-07 02:34


起源

StringBuilder是大香蕉。 - Hans Passant


答案:


System.Text namespace包含类,抽象基类和帮助器类。 比方说,如果你想利用 StringBuilder,解码器,编码器等......

上述类在.net中的大多数情况下起着重要作用。但它没有必要在你的代码中存在。它仅适用于您需要的时间。重要的是要知道何时需要命名空间。

默认情况下,它是在visual studio中添加的,以方便开发人员。与...相同 System.Linq的 命名空间,并不是所有的时间你将使用它,但为方便起见,它已经添加,假设你将使用它,这取决于你根据具体情况删除它。

有时,如果不需要,删除它比在需要时找出命名空间和类型要容易得多:)

有关System.Text的更多信息


11
2018-06-07 03:16



+1是实际问题的唯一答案。 - Matthew Ferreira


如果您不喜欢它,您可以随时创建自己的项目模板。看到 http://msdn.microsoft.com/en-us/library/tsyyf0yh(v=VS.80).aspx


2
2018-06-07 02:52





你应该添加 using 仅适用于您在代码中引用的名称空间。
这样,源文件将没有巨大的“使用标头”和更少的命名空间冲突。

当您使用Resharper时,很容易遵循此规则。


1
2018-06-07 02:35



嗨,只是问我想知道。我们怎么会有命名空间冲突?我们不是有名称空间来避免冲突吗? - modest and cute girl


如果您不使用它,请不要包含命名空间。它只是自动包含,因为它是更常用的命名空间之一。如果我想使用正则表达式或字符串操作方法,我通常会使用它。但是如果删除它并且没有编译器错误, 把它放在外面是安全的


1
2018-06-07 02:37





如果它没有被使用,它不应该在代码中。 如果Visual Studio在默认情况下添加它们,那么只需要向开发人员提供简单的功能,因为它认为这些是非常常见的命名空间,但是根据你正在做的事情,它们可能在很多类中都不需要,只是当你体验。


1
2018-06-07 02:37