1

数日前、ここで作業中の C# アプリケーションの 1 つで、次のエラーに遭遇しました。エラーメッセージは次のようになります。

「継承されたインターフェイス '...ResourceManager.ResourcesManager' により、D:...\Common\ResourceManager\IResourcesManagerView.cs の '...ResourceManager.IResourcesManagerView' のインターフェイス階層でサイクルが発生します"

これは私のマシンでは常に発生しますが、ビルド マシンでは 50-50 の確率でビルドが成功します。私のクラス 'ResourceManager' はインターフェース 'IResourcesManagerView' を実装しています。これはいくつかのインターフェースも実装しており、そのうちの 1 つは IInitializable という名前の汎用インターフェースです。次の回避策を見つけました。IInitializable を実装するダミー インターフェイス IDummy を宣言します。

しかし、それは私には意味がありません。誰かがこの問題に遭遇しましたか? Windows XP、Visual Studio 2005 を使用しています。

4

3 に答える 3

1

1) クラス図を追加して問題を視覚化します。あなたは今使っていないと何かが教えてくれます。

2) 投稿できるものに問題を最小限に抑えます。しかし、あなたはおそらく途中でそれを見つけるでしょう。

最良の推測:IInitializableまたはおそらくIResourcesManagerViewの2つのバージョンがあるようなにおいがします。

于 2009-03-03T15:14:37.113 に答える
1

インターフェイスを含む同じバージョンのアセンブリを参照している可能性があります。同じ場所から共通のアセンブリを参照していることを確認してください。

于 2009-03-03T16:02:36.577 に答える
0

私は同じコンパイルエラーを取得し、それを(一種の)修正し、ここで形式化しました。しかし、それはあなたの問題とは別の問題かもしれません。

于 2016-05-12T13:30:36.730 に答える