2つのビルドタスクMarkupCompilePass1
とPartialClassGenerationTask
がどのように組み合わされているか説明する人がいますか?現在、私は彼らが共存しているのか、お互いが必要なのか分からない。あるクラスが両方のクラスの使用法を明確にし、どのように相互作用するか?PartialClassGenerationTaskとMarkupCompilePass1はどのように動作しますか
2
A
答えて
2
MarkupCompilePass1
は、PartialClassGenerationTask
を使用して、すべてのXAMLファイルの部分クラスを生成します。
WPFパイプラインはかなり複雑で、WPFアプリケーションをコンパイルするときには多くの可動部品があります。
PartialClassGenerationTask
は、タイプを指定し、x:Class
のXAMLファイルに対して特に機能します。これらの問題が発生すると、タスクは一致するcsまたはvbコードファイルを生成し、C#/ VBコンパイラは後でそのクラスとそのプロパティを参照できます。
タスクタスクは、テキストベースのXAMLファイルをバイナリBAML形式に変換します。他のプロジェクトや参照されているアセンブリで定義された型だけを参照するすべてのXAMLファイルをコンパイルします。
MarkupCompilePass2
タスクはPass 1をフォローし、同じプロジェクトのコードをBAMLに参照するXAMLファイルを具体的にコンパイルします。
XAMLプロジェクトのコンパイルを高速化するには、2番目のプロジェクト(標準クラスライブラリ)で型を定義する方がよいでしょう。そうすれば、MarkupCompilePass2
はスキップできます。
フルWPFは、パイプラインを構築するにはMSDNで説明されています。その詳細な説明とリンクについて
関連する問題
- 1. Meteorはどのように動作しますか?クライアントとサーバーはどのように動作しますか?
- 2. PHPは "リモートインクルード"とはどのように動作しますか?
- 3. NodeJS - connection.rollback()はasync.parallelとどのように動作しますか
- 4. 〜〜xと〜-xはどのように動作しますか?
- 5. document.getElementById - onchangeイベントとはどのように動作しますか?
- 6. jmsはtibcoとどのように動作しますか?
- 7. compareToとcompareはどのように動作しますか?
- 8. Adobe AIRとiPhone - どのように動作しますか?
- 9. tf.train.Saverはどのように正しく動作しますか?
- 10. LINQ IEnumerableはどのようにして動作しますか?
- 11. Hibernateコールセパレーションジェネレータはどのようにして動作しますか?
- 12. Makefileでは、VPATHはどのように動作しますか?
- 13. execlpはどのように正確に動作しますか?
- 14. インポートライブラリはどのように正確に動作しますか?
- 15. #+ BIND:実際にはどのように動作しますか
- 16. bindingnameはどのように正確に動作しますか?
- 17. CloudConfigurationManager.GetSetting( "")は実際にどのように動作しますか?
- 18. getline()は実際にどのように動作しますか?
- 19. WicketのResourceReferenceとは何ですか?どのように動作しますか?
- 20. .gitconfigの[github]セクションはどのように動作しますか?
- 21. Javaのガベージコレクタはどのように動作しますか?
- 22. listViewのsetListAdapter(Arrayadaper)はどのように動作しますか?
- 23. jQueryの.delayメソッドはどのように動作しますか?
- 24. アクティビティタイマーイベントのデフォルトカレンダーはどのように動作しますか?
- 25. このC++コードはどのように動作しますか?
- 26. 残りのオペレーターはどのように動作しますか?
- 27. レールはラックアタックスロットルの動作をどのようにしますか?
- 28. テーブルレンダリングのjQueryプラグインはどのように動作しますか?
- 29. スマートフォンのデータベースはどのように動作しますか?
感謝を! – BendEg
'csまたはVBコードファイルを使用して、C#/ VBコンパイラがクラスとそのプロパティを後で参照できるようにしました。 'xamlをコンパイルして部分クラスを作成しますが、プロパティは作成されません。ここにヒントはありますか? – BendEg
あなたは何をしているのかよく分かりません。コンパイル時に部分クラスが生成されます。 xamlプロジェクトの 'obj'フォルダを調べることで、何が生成されているのかを見ることができます。あなたの*クラスが部分クラスで、同じ名前空間とクラス名を指定していない限り、それらは一致しません。 – jessehouwing