簡體   English   中英

Visual Studio 無法定位 .NET 框架 4.8

[英]Visual Studio Can't Target .NET Framework 4.8

我在創建一個針對 .NET Framework 4.8 的項目時遇到了一些問題。 我正在使用升級到版本 16.2.5 的 Visual Studio 2019。 我還安裝了.NET Framework 4.8 Developer Pack 從 Visual Studio 安裝程序中,我看不到任何啟用類似於 4.7的 4.8 開發工具的選項。

剛剛在 Visual Studio 2019 社區版中遇到了類似的問題:僅顯示了 .Net Core 版本。

我手動編輯了.csproj文件。 我將具有TargetFramework屬性的行更改為

<TargetFramework>net48</TargetFramework>

奇怪的是,現在所有其他版本也出現了。

只是想我會發布我的問題,因為我在 VS2019 Winforms 項目中也偶然發現了這個問題,並且除了.Net 5 和 Core 3.1 之外無法定位任何東西。 原來有兩種類型的 Winforms,Winforms App 和 Winforms App (.Net Framework)。 前者將無法針對其他 .net 框架。 后者是可以的。 呃。 不明顯的簡單東西。

這個Visual Studio 線程有我正在尋找的所有答案。 .NET 框架 4.8 開發包包括 SDK 和目標包。 安裝此工具並重新啟動 Visual Studio 后,我現在可以看到 .NET Framework 4.8 作為 Visual Studio 項目的目標選項。 您不需要執行任何 Visual Studio 安裝程序步驟。

在上述線程中還提到,.NET Framework 4.8 將包含在 Visual Studio 安裝過程中,從 16.3 開始( 目前在 16.3 Preview 2 下列出)。

上述解決方案都沒有解決我的問題,但 Oak_3260548 的解決方案為我指明了正確的方向。

在 Visual Studio 安裝程序中,可以通過單擊頂部菜單中的“工具/獲取工具和功能”來訪問,我選擇了“單個組件”選項卡並選中了“ .Net Framework 4.8 目標包”。 那為我修好了。 在此處輸入圖像描述

我在目標框架下通過 VS 安裝了框架 4.8。 正如我所期望的那樣,在項目屬性下無法選擇它。

我最終不得不重新創建我的 VS 項目。 對於模板,我通過使用框架 c# 控制台搜索參數在項目創建中搜索模板找到了框架 4.8。 然后我將我的文件復制到新的項目文件夾中,並通過解決方案工具將它們添加為現有項目。

對於在 VS 2019 社區版中遇到此問題的任何人。 在我的案例中,問題是混淆了 select 的模板。 .NET 框架的模板在括號中並且在列表的較低位置(在我單擊搜索框旁邊的“清除”鏈接之前,在我的情況下根本不顯示)。

例子:

控制台應用程序 (.NET Framework) ASP.NET Web 應用程序 (.NET Framework) Class 庫 (.NET Framework) 等

我找到了一個解決方案:如果我希望 Visual Studio Community 2019 以 .NET 4.8 為目標,我可以使用 Visual Studio Express 2013 創建一些簡單的項目。在項目設置中,我更改所需的 .NET(最高 4.8)並保存。 之后,您可以使用 Visual Studio Community 2019 打開該項目,您將在項目設置中看到所有 .NET 目標選項高達 4.8。

但是,如果您想使用 .NET Core 3.1 和 .NET 5.0,您必須在 Visual Studio Community 2019 中創建一個新項目。

上面沒有解決我的問題。 https://docs.microsoft.com/en-us/visualstudio/ide/step-1-create-a-windows-forms-application-project?view=vs-2019第 2 點注釋中的注釋幫助:

筆記

如果您沒有看到 Windows Forms App (.NET Framework) 模板,您可以從創建新項目 window 安裝它。 在未找到您要查找的內容? 消息,選擇安裝更多工具和功能鏈接。

“創建新項目”window 中的“未找到您要查找的內容”消息中的“安裝更多工具和功能”鏈接

在此處輸入圖像描述

接下來,在 Visual Studio 安裝程序中,選擇.NET 桌面開發工作負載。

在此處輸入圖像描述

之后,選擇 Visual Studio 安裝程序中的修改按鈕。 系統可能會提示您保存工作; 如果是這樣,請這樣做。 接下來,選擇繼續安裝工作負載。

雖然我在安裝 VS 時總是檢查它,但它丟失了。 即使我安裝了正確的跟蹤包,也缺少 tepmlates。

C:\Program Files\Microsoft Visual Studio\2022\Community\Msbuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets

<!--
<GetReferenceAssemblyPaths
    Condition="'$(TargetFrameworkMoniker)' != '' and ('$(_TargetFrameworkDirectories)' == '' or '$(_FullFrameworkReferenceAssemblyPaths)' == '')"
    TargetFrameworkMoniker="$(TargetFrameworkMoniker)"
    RootPath="$(TargetFrameworkRootPath)"
    TargetFrameworkFallbackSearchPaths="$(TargetFrameworkFallbackSearchPaths)"
    BypassFrameworkInstallChecks="$(BypassFrameworkInstallChecks)"
    >
  <Output TaskParameter="ReferenceAssemblyPaths" PropertyName="_TargetFrameworkDirectories"/>
  <Output TaskParameter="FullFrameworkReferenceAssemblyPaths" PropertyName="_FullFrameworkReferenceAssemblyPaths"/>
  <Output TaskParameter="TargetFrameworkMonikerDisplayName" PropertyName="TargetFrameworkMonikerDisplayName" Condition="'$(TargetFrameworkMonikerDisplayName)' == ''"/>
</GetReferenceAssemblyPaths>
-->

1.使用XMAL選擇WPF APP(.NET Fromework)

2. Select .NET 4.8

在 Visual Studio 2022 上,我選擇帶有 XMAL 的 WPF APP (.NET Fromework) 可以支持 .NET 框架

即使使用較低的 Visual Studio(我的是 Win 2008 R2 下的 15.2),您也可以做到!

  1. 安裝 Net Framework 4.8 Runtime 和 Developper Pack
  2. 重啟服務器
  3. 打開現有項目並在項目屬性中,將框架切換到 4.8

而已!

在此處輸入圖像描述當我收到提示時會發生什么

每次我單擊繼續時,它似乎都沒有安裝或允許我向前 go,它明顯表明我的文件已卸載。 難道我做錯了什么?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM