c# - 此应用程序需要以下版本之一的 .NET Framework

标签 c# asp.net .net .net-framework-version .net-4.6.1

我正在尝试将我们的应用程序迁移到更新版本的 .NET Framework。从当前版本4.5到4.6.1

我们迁移到版本 4.6.1 而不是 4.7 或 4.6.2 的原因是,我们的大多数用户和开发人员都拥有 Windows 11 月 10 日更新,并且基于来自 .NET Framework System Requirements 的信息。 , .NET Framework 4.6.1 应该默认预装在这个版本的 Windows 中。 这将使我们不需要用户下载任何类型的更新。

我们面临的问题是,每次我们运行应用程序时都会显示以下错误消息:

This application requires one of the following versions of .NET Framework: .NETFramework,Version=v4.6.1

Do you want to install this .NET Framework version now?

我还根据 MSDN 的文章检查了注册表中列出的 .NET Framework 版本:How to: Determine Which .NET Framework Versions Are Installed

注册表值为394806,实际上应该是.NET Framework 4.6.2

关于如何解决这个问题以及可能导致它的原因有什么想法吗?我不希望用户被迫安装更新,因为无论如何它都应该是操作系统的一部分。

最佳答案

我们最近遇到了类似的问题。启动服务时,我们收到错误“此应用程序需要以下 .NET Framework 版本之一:”

我们发现问题是我们对如何更新 app.config 文件的误解。

我们更改了 app.config 文件来设置 <supportedRuntime version="v4.7" sku=".NETFramework,Version=v4.7" />

但应该设置为 <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7" />

我们错误地设置了 .NET 的主要版本,如 https://learn.microsoft.com/en-us/dotnet/framework/configure-apps/file-schema/startup/supportedruntime-element#version 中所述

关于c# - 此应用程序需要以下版本之一的 .NET Framework,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44237105/

相关文章:

c# - 高级 .net 开发人员是否需要数据结构知识?

C# MVC3 ViewBag,如​​何在 foreach 语句中的 View 中使用列表属性?

.net - asp.net成员的用户createdate

c# - 一种以均匀间隔推送缓冲事件的方法

c# - 如何将子项的值传回父窗体?

c# - 获取由 foreach 循环 mvc 生成的选中复选框

c# - 每个请求缓存 Entity Framework DbContexts

c# - exe 文件无法从 IIS 创建 txt 文件

c# - ASP.NET 中的奇怪(缓慢)行为

c# - 我们可以在c#的方法中同时使用virtual和new关键字吗?