MSBuild 17 では、プロパティ関数内での GetType() インスタンス メソッドの呼び出しがサポートされなくなりました。 このメソッドは、評価中に予期しないコードの実行を許可し、Visual Studio のハングを引き起こす可能性があります。
導入されたバージョン
.NET SDK 6.0.100-rc1
以前の動作
GetType() MSBuild プロパティ関数の呼び出しが実行され、Visual Studio で予期しない動作が発生する場合があります。
新しい動作
.NET 6 SDK 以降では、MSBuild プロパティ関数で GetType() を呼び出すと、プロジェクトの評価中に次のコンパイル時エラーが表示されます。
型 "System.String" の関数 "GetType" は、MSBuild プロパティ関数として実行できません。
カテゴリの変更
この変更は ソースの互換性に影響します。
変更の理由
この機能は文書化されていないか、一般的に使用されていません。 プロジェクトの読み込み (特に Visual Studio) でパフォーマンスと信頼性の問題が発生しました。
このパターンの唯一の既知の一般的な用途は、非推奨となった CBT システムでした。
推奨されるアクション
GetType()の呼び出しを別の MSBuild ロジックに置き換えます。
影響を受ける API
なし
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET