2012-03-20 48 views
1
  1. 實際上全局抑制文件是什麼?
  2. 什麼是要使用的實際文件名稱?它是GlobalSuppression.cs還是GlobalSuppression * s * .cs ?? (我看到很多使用兩個..的例子!!所以,混淆..例如here
  3. 我應該爲每個組件分別使用此文件來抑制消息,或者,我是否可以保留包含消息抑制的單個文件解決方案中的所有項目?

回答

0

您正在描述一個名爲CodeAnalysis的功能,可在Visual Studio Premium和Ultimate中使用。它有效地將FxCop集成到VS. (我沒有使用它,因爲我只有VS profressional並且必須單獨運行FxCop)。

您可以將抑制消息放入您喜歡的任何文件中,它不必被稱爲GlobalSuppressions.cs。只要它包含在項目中。

GlobalSupressions.cs是默認情況下Visual Studio的集成代碼分析功能使用的名稱。 (事實上​​,在您鏈接的頁面末尾有指導如何配置代碼分析以使用不同的文件)。因此,你可以在一個沒有其他代碼的單獨文件中包含壓抑,如代碼分析所顯示的那樣。或者你可以在現有文件中加入抑制 - 我們的解決方案之一是在每個程序集的Proprties.cs文件中加入壓抑。

至於你是否可以保留一個文件包含整個解決方案的所有限制,我懷疑這取決於你壓制什麼以及如何 - 我已經試過了。

您可以指定影響當前裝配[assembly: SuppressMessage(...)]消息,因此不會在溶液中寬文件的工作 - 但你可能能夠使用scope =target =選項,使其他[module: SuppressMessage(...)][SuppressMessage(...)]類型的消息工作。

+0

[Visual Studio Ultimate和Visual Studio Premium](http://msdn.microsoft.com/zh-cn/library/dd264939.aspx) – abatishchev 2012-03-20 09:17:40

+0

如果我使用命令行調用fxcopcmd.exe,SuppressMessage的工作原理是什麼? – Kiquenet 2013-01-31 14:47:06

+0

@Kiquenet:是的,我是如何運行FxCop的 - 無論是作爲我的開發機器上的GUI還是通過構建服務器上的批處理文件/ commnad行。 – Grhm 2013-01-31 16:05:06