0

私を悩ませている奇妙なビジュアルスタジオエラーがあります。

VisualStudio2010を使用しています

私のソリューションは小さく、2つのプロジェクトが含まれています。

プロジェクト1のクラスライブラリには、次のクラスが含まれています。

  1. Namespace1.DataClass(データを保持するためのシリアル化可能なクラス)
  2. Namespace2.AccessorClass(Namespace1.DataClassのインスタンスをデータベースからLinq経由でSQLにプルするメソッドを持つクラス)

プロジェクト2、コンソールアプリケーションには、次のクラスが含まれています。

  1. Namespace3.Program(データベースからデータをプルし、wcfサービスを介して送信するmain関数を使用)
  2. Namespace4.WCFProxy(svcutilによって生成されたwcfプロキシ)

WCFクライアントは、次の形式でオブジェクトをサービスに送信します。

[System.Runtime.Serialization.KnownTypeAttribute(typeof(Namespace1.DataClass))]
public class SendItem
{
    public object Item { get; set; }
    public string Label { get; set; }
}

(これはsvcutilによって生成されるため、スペースを節約するために言い換えています)

したがって、私のプロキシクラス内には、Namespace1.DataClassへの参照があります。

アプリケーションをビルドするとき、最初にデータベースにアクセスするプロジェクトを作成し、次にコンソールアプリを作成し、コンソールアプリからクラスライブラリに参照を追加し、最後にプロキシを生成して(編集せずに)に追加しました。コンソールアプリプロジェクト。

すべてが正常に見え、ビルド前のVSコンパイルエラーはありません。次に、ビルドすると、VSはコンソールアプリプロジェクトからクラスライブラリプロジェクトへの参照を忘れているように見え、それに応じてコンパイルエラーのヒープが発生します。

プロジェクトからプロキシクラスを除外すると、VSは参照を再度表示できます。プロキシを再度追加しても、すべてが正常です(エラーがなく、完全なインテリセンスサポートがあります)が、[ビルド]をクリックすると、すべてが再び失敗します。

誰かが以前にこの問題に遭遇したことがありますか?

乾杯シェーン

4

1 に答える 1

0

It was log4net, beware of this behavior in future.

Just to clarify, this problem had nothing to do with WCF as I though it did.

于 2011-03-10T16:33:51.943 に答える