- PR -

{VS2005 C#}プログラムの一部分のみ構文解析を無効にしたい

1
投稿者投稿内容
ひろし
ぬし
会議室デビュー日: 2002/09/16
投稿数: 390
お住まい・勤務地: 兵庫県
投稿日時: 2006-08-16 17:14
プログラムの特定の部分のみ構文解析を無効にすることはできるでしょうか。
VS2005の構文解析を常用しています。プログラムの大部分については構文解析を有効にしますが、
一部分のみ無効にしたい場合があります。
例えば新規に作成するモジュールは構文解析を有効にし、既存のソースコードについては
構文解析のチェックを無効にするようなケースを想定しています。
方法としては、名前空間ごと、クラスごと、ファイルごと等、いずれの区分でもOKですが、
そのような使い分けができますか?可能であるならば必要な情報はどこに記載されていますか?
よろしくお願いします。
すみちゃん
会議室デビュー日: 2006/08/16
投稿数: 2
投稿日時: 2006-08-16 17:59
こちらで実現できませんか?

http://msdn2.microsoft.com/ja-jp/library/ms244717.aspx
ひろし
ぬし
会議室デビュー日: 2002/09/16
投稿数: 390
お住まい・勤務地: 兵庫県
投稿日時: 2006-08-16 19:44
回答ありがとうございます。

名前空間にカスタム属性の設定を試みましたが、
"SuppressMessage"が見つからないとしかられてしまいました。
参照が不足しているのでしょうか?

[SuppressMessage("Microsoft.Design", "CA1021")]
namespace Abc
{
すみちゃん
会議室デビュー日: 2006/08/16
投稿数: 2
投稿日時: 2006-08-16 20:58
名前空間: System.Diagnostics.CodeAnalysis
アセンブリ: mscorlib (mscorlib.dll 内)

こちらも参照ください。
http://msdn2.microsoft.com/ja-jp/library/system.diagnostics.codeanalysis.suppressmessageattribute.aspx
ひろし
ぬし
会議室デビュー日: 2002/09/16
投稿数: 390
お住まい・勤務地: 兵庫県
投稿日時: 2006-08-17 12:51
ご回答ありがとうございます。

警告メッセージの抑制が機能することが確認できました。
しかし、下記の2点について疑問があります。

★疑問1
コード分析対象の長いメッセージはどうすれば知り得るのでしょうか?
警告メッセージからCA1021を知ることはできますが、"Avoid out parameters"
というメッセージを知るためにはどこをどう検索すれば良いのでしょうか?

マイクロソフトは保守の観点から書式1では無く書式を推奨しています。

書式1:[SuppressMessage("Microsoft.Design", "CA1021")]
書式2:[SuppressMessage("Microsoft.Design", "CA1021:Avoid out parameters")]

★疑問2
特定のモジュールに対して警告メッセージを抑制するのでは無く、
例外的にコード分析対象から除外することはできますか?
1

スキルアップ/キャリアアップ(JOB@IT)