0

ご存知のように、Visual Studio for C# プロジェクトでは、対象とする .NET フレームワークを指定できました。これは、ターゲットが .NET 4.0 のときに取得した app.config ファイルです。

<configuration><startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/></startup></configuration>

したがって、そこに sku 属性があります。これは、.NET 4.5 がインストールされている間に .NET 4.0 がインストールされていないマシンでは私のコードが動作しないことを意味しますか? MSDN からわかりにくいことがわかりました。これについて明確にしたいと思います。もしそうなら、それはかなり悪い設計だと思います。コードを .NET 4.0 以降の .NET バージョン (.NET 4.5 など) で実行したい場合はどうすればよいですか? env ごとに異なる app.config を配布できませんでした。

4

2 に答える 2

3

.Net のバージョンをターゲットにすると、プロジェクトの実行に必要な最小バージョンが設定されます。また、そのバージョンで使用可能だった .Net フレームワークの要素を使用したコーディングに制限されています。

私の会社では、すべてのクライアントにプッシュしたい一部のプロジェクトで .Net v2.0 をターゲットにする必要があります。これは、.Net の新しいバージョンではない、または実行できない古いハードウェアがあるためです。

于 2012-12-03T20:12:56.637 に答える
2

この投稿を確認してください。非常によく説明されています。

http://www.hanselman.com/blog/NETVersioningAndMultiTargetingNET45IsAnInplaceUpgradeToNET40.aspx

ソースから抽出:

.NET 4 と .NET 4.5 の両方で安全に開発する

マシンに .NET 4.5 をインストールすると、.NET 4 用に安全に開発できないことがブログで暗示されています。Rick の投稿では、.NET 4 マシンで 2 つの DLL を比較し、.NET 4.5 を配置した後で再度比較しています。アップグレードします。.NET 4.5 をインストールしている場合、どうすれば .NET 4 を安全にターゲットにできますか? これらの .NET 4 DLL はもうありませんよね?

于 2012-12-03T20:08:59.043 に答える