2

だから私はMonoでC#プロジェクトを構築しようとしています。Monoコンパイラが定義する定数System.Deploymentの有無を条件とする参照を含めたいと思います。__MonoCS__ただし、MSBuildが.csprojを取得したときに、これらの定数がまだ定義されているかどうかはわかりません。

MONO定数を定義するMono構成を追加する必要があると思います。その後System.Deployment、コマンドを使用して必要な行への参照を削除し、条件付きでコンパイル#if MONOできます...しかし、単純に追加できれば、はるかに簡単になりますCondition="Defined(__MonoCS__)"。問題の行とそれを良いと呼びます...

4

2 に答える 2

2

残念ながら、あなたは物事を後退させていると思います。コンパイラ定数がMSBuildに戻されることはありません。呼び出しのチェーンは、MSBuild->コンパイラ->プリプロセッサです。

于 2012-09-28T22:17:04.990 に答える
0

悲しいことに、Monoにはxbuild(MSBuildと同等)にこのバグがあり、このような条件を定義するのが非常に困難になっています。

バグを修正してみませんか?簡単なはずですが、実際にはまだ試す時間がありませんでした。

于 2012-09-28T20:39:37.903 に答える