2011-05-13 106 views
7

可能重複:
Should Usings be inside or outside the namespace「使用」的聲明地點命名空間聲明中

我支持一些代碼,不尋常的,包含了命名空間聲明中的所有其使用的語句。這讓我有點不舒服,但我不知道這是否應該是值得關注的事情。除了與慣例相違背之外,我想不出一個直接的問題。

有什麼不妥:

namespace myProject.controls 
{ 
    using System; 
    using System.Collections; 
    using System.Data; 
    using System.Drawing; 
    using System.Web; 
    using System.Web.UI.WebControls; 
    using System.Web.UI.HtmlControls; 

,而不是更廣泛使用:

using語句 的
using System; 
using System.Collections; 
using System.Data; 
using System.Drawing; 
using System.Web; 
using System.Web.UI.WebControls; 
using System.Web.UI.HtmlControls; 

namespace myProject.controls 
{ 
+0

本文可能有幫助:http://stackoverflow.com/questions/125319/should-usings-be-inside-or-outside-the-namespace – keyboardP 2011-05-13 02:49:36

+0

作爲一個完全重複的問題來關閉這個問題(因爲我不能刪除它)。 – 2011-05-13 03:19:44

+0

可能重複? http://stackoverflow.com/questions/125319/should-usings-be-inside-or-outside-the-namespace – 2011-05-13 02:49:40

回答

0

位置影響到文件中引用 的範圍。

我想不出有什麼情況會'保證'限制它的範圍較小。儘管如此,我寧願堅持慣例 - 或者詳盡評論 - 只是爲了確保「下一個人」不必猜測我的意圖。

也許這個鏈接將回答您的問題進行詳細

2

沒有什麼與此關注;實際上,第一個示例(using聲明裏面的命名空間聲明)是由StyleCop默認推薦的。

2

唯一的區別與範圍界定有關。例如,在第一種情況下,使用聲明在名稱空間聲明範圍內,並且在其外部不可用,例如在同一文件中的其他名稱空間聲明中。在第二種情況下,聲明在整個文件的範圍內。