一般に、実行可能プロジェクトは他の実行可能プロジェクトではなくライブラリ プロジェクトを参照します。 実行可能プロジェクトは、別の実行可能プロジェクトを参照して、その中で定義されている API を使用することもできます。 一部の開発者は、別の実行可能プロジェクトから実行可能プロジェクトを参照して、両方のアプリが同じ出力フォルダーに配置され、同じ出力フォルダーから実行可能になるようにしたいと考えています。 ただし、自己完結型の実行可能ファイルが非自己完結型の実行可能ファイルを参照している場合、またはその逆の場合、このシナリオは機能しません。 アプリケーション ホストのしくみにより、どちらのアプリも起動できません。 アプリが実行できない状況を防ぐために、.NET SDK 5 以降では、一致しない実行可能ファイル参照が検出された場合、コンパイル時エラー NETSDK1150とNETSDK1151が生成されます。
変更の説明
以前のバージョンの .NET SDK では、自己完結型でない実行可能プロジェクトから自己完結型の実行可能プロジェクトを参照しても、ビルドエラーは発生しませんでした。 ただし、両方のアプリは実行できません。 .NET SDK 5 以降では、実行可能プロジェクトが別の実行可能プロジェクトを参照していて、 SelfContained
値が一致しない場合にエラーが生成されます。
導入されたバージョン
.NET SDK 5.0.300
変更の理由
エラーは、両方のアプリケーションを起動できるが起動できない状況を防ぐために導入されました。
推奨されるアクション
参照先のプロジェクトを出力フォルダーから実行できる必要がない場合は、このエラー チェックを回避するプロパティを設定できます。
<ValidateExecutableReferencesMatchSelfContained>false</ValidateExecutableReferencesMatchSelfContained>
詳細については、「 ValidateExecutableReferencesMatchSelfContained」を参照してください。
影響を受ける API
なし。
.NET