0

アクティビティのインスタンスを作成しようとすると、「型または名前空間の名前が見つかりませんでした」という例外が発生します。ターゲット フレームワークは .Net4 (フル プロファイル)

WF は次のように定義されます。

<Activity x:Class="MyApp.Workflow.MyWorkflow " ...>

アクティビティ コードはまだ含まれていません。作成したばかりです。私の呼び出しコード:

using MyApp.Workflow;
MyWorkflow workflow = new MyWorkflow();

ワークフローの xaml で参照されているすべての dll が参照されていることを確認しました。他に何を確認できるか知っている人はいますか?

編集- 以下を試しました:

  • プロジェクトに新しいアクティビティを追加する
  • 任意のソース コード ファイルに移動し、アクティビティのコンストラクターへの呼び出しを追加します (構文の強調表示とコード補完を使用 - インテリセンスは型を認識します)。
  • 再コンパイル

結果: ワークフローのタイプ (MyApp.Workflow. MyWorkflow ) は不明です。まったく同じ参照を使用して別のソリューションで同じことを行うと、正常に機能します。

4

2 に答える 2

0

OK、最終的にはそれを見つけました。XAMLパーサーにバグがあり、これが発生するようです。簡単に再現できます。

  • WPFプロジェクトを作成する
  • そのプロジェクトにアクティビティを追加し、WFそのアクティビティのコンストラクターをどこかに呼び出します
  • F6を押して幸せになりましょう
  • xmlns:xyz="clr-namespace:Namespace.That.Contains.Controls"ウィンドウのコードに追加します。コントロールを作成したくない場合は、ウィンドウが定義されている名前空間を使用してください。
  • F6を押して、アクティビティを解析できなくなったことを確認します。アクティビティがスパンする名前空間内にある場合、その名前空間は存在しません。そうでない場合、アクティビティのタイプは存在しません。

GodDammit、それは私に丸一日かかりました...

于 2012-09-05T13:53:49.577 に答える
0

これらの手順を実行してください

  1. クリーンソリューション。
  2. ビルド ソリューション。
  3. 参照を追加します。
  4. ワークフロー デザイナーの下部にあるワークフローで名前空間をインポートします。
于 2012-09-04T10:47:49.380 に答える