2

問題(C#コンパイラの警告メッセージ):

警告CS0467:メソッド'Microsoft.Office.Interop.Word._Document.close(ref object、ref object、ref object)'と非メソッド'Microsoft.Office.Interop.Word.DocumentEvents2_Event.Close'の間のあいまいさ。メソッドグループを使用します。

(部分的な..)解決策: 「Microsoft.Office.Interop.Word._Document.Close」を使用する場合のコンパイル時の警告

ジレンマ:明示的ににキャストするとMicrosoft.Office.Interop.Word._Document、ReSharperは「型キャストは冗長です」と警告します

質問:パッチワークだけでなく、この警告メッセージの実際の解決策はありますか?

4

2 に答える 2

8

キャストしないでください。C#では必要ありません。

Word._Application app = new Word.Application();
Word._Document doc = app.Documents.Add(...);
doc.Close(...);    // No ambiguity
app.Quit(...);
于 2012-05-08T08:42:39.917 に答える
3

エラーを回避するためにキャストが必要な場合は...キャスト!

Resharperには(優れた)一般的なルールがありますが、適用できない場合があります。

この特定のケースでは、resharper警告メッセージを「非表示」にするか(「コメント付きの検査xxxを抑制する」)、または...一緒に生きることができます(可能な場合/許可されている場合)。

編集:わかりました、libバージョン12.0.0.0で警告が表示されました

だからあなたは試すことができます

_Document w = new Document();

そして、c#とresharperの警告を回避する必要があります。

于 2012-05-07T10:08:26.273 に答える