首页 > 其他分享 >记录一次.NET6环境使用Visual Studio 2022 V17.6.2版本的异常

记录一次.NET6环境使用Visual Studio 2022 V17.6.2版本的异常

时间:2023-06-07 16:14:18浏览次数:48  
标签:版本 Visual Studio 2022 Components Microsoft

开发环境

C#开发环境Visual Studio 2022 V17.6.2版本。

目标框架:

.NET 6.0

错误内容:

系统是Blazor Server框架的系统页面,在使用Visual Studio 2022 V17.6.2版本编译后,执行出现:

TimeStamp: 2023/6/6 13:35:07
MachineName: Light.Yang
AppDomainName: SajetServerApp
OS: Microsoft Windows 10.0.18363
OSArchitecture: X64
ProcessArchitecture: X64
Framework: .NET 6.0.16
UserName: lukel
VSIDE: Microsoft Visual Studio Community 2022 17.0 
Message: Unable to set property 'placeholder' on object of type 'Sajet.WebUI.Components.SelectInput`1[[System.String,System.Private.CoreLib,Version=6.0.0.0, Culture=neutral,PublicKeyToken=7cec85d7dea7798e]]'.The error 
was: Unable to cast object of type 'MicrosoftExtensions.Localization.localizedString' to type 'System.Strinq'.
**********************************************
StackTrace: at Microsoft.AspNetCore.Components.Reflection.ComponentProperties.g_SetProperty|3_0(Object target,PropertySetter writer,String parameterName,Object value)
at Microsoft.AspNetCore.Components.Reflection.ComponentProperties.SetProperties(ParameterView& parameters, Obiect target)
at Microsoft.AspNetCore.Components.ParameterView.SetParameterProperties(Object target)
at BootstrapBlazor.Components.ValidateBase`1.SetParametersAsync(ParameterView parameters)
at Microsoft.AspNetCore.Components.Rendering.ComponentState.SupplyCombinedParameters(ParameterView directAndCascadingParameters)

问题分析过程:

  1. 先使用了Visual Studio 2022 V17.4.0版本编译后可以正常。
  2. 经过分析:Visual Studio 2022 V17.4.0还在使用的目标框架为:.NET 6.0,Visual Studio 2022 V17.6.2版本的目标框架为:.NET 7.0
  3. 首先怀疑目标框架为:.NET 7.0造成的不兼容的问题,尝试System.Private.CoreLib.dll的NET6.0版本。直接放在系统执行环境中,尝试是否可以正常使用,结果:失败。
  4. 再次尝试,安装Visual Studio 2022旧版本,因为在官方网站上下载的Visual Studio 2022都是最新版本。下载地址:下载 Visual Studio Tools - 免费安装 Windows、Mac、Linux (microsoft.com),Visual Studio 2022 分3类版本:社区版、个人版、企业版;大家可以根据自己需求选则下载,此处连接下载的都是最新版本。
  5. 在官方网站中查找VS2022的历史版本:Visual Studio 2022 发行历史记录 | Microsoft Learn,以下内容可以选择自己的版本,经过测试:17.2版本支持最新的.NET6.0框架,17.4.1版本以后就支持.NET7.0框架。下载17.2版本中的最新版本:17.2.15版本。
  6. 经过测试,Visual Studio 2022 V17.2.15版本,编译后的程序可以正常使用。
  7. 通过其他人员安装的不同版本VS2022进行测试结果如下
VS 2022版本 支持最新框架 测试结果
Visual Studio 2022 V17.6.2 .NET6.0 出现异常
Visual Studio 2022 V17.5.2 .NET7.0 正常
Visual Studio 2022 V17.4.0 .NET6.0 正常
Visual Studio 2022 V17.2.15 .NET6.0 正常

总结:

  1. 通过测试发现,出现问题应该和VS2022的版本有关,和NET7.0环境无关。希望Visual Studio 2022新版本可以解决此BUG吧!
  2. 建议:不要盲目的追求使用最新版本的Visual Studio,特别是生产型企业,这样会导致生产停线,造成的损失就比较大了。
  3. 官网网站上针对旧版的引导程序(引导程序安装必须有外部网络),提供了“结束支持日期”,害怕结束支持日期一到,引导程序就无法在线安装(我理解的这个不知对不对!!!)。接着研究一下怎么把历史版本保留下来,以后安装时可以通过本地文件直接安装。

标签:版本,Visual,Studio,2022,Components,Microsoft
From: https://www.cnblogs.com/LightYang81/p/17463420.html

相关文章

  • vSphere ESXi6.5创建Windows Server 2022虚拟机
    头一次操作,也踩了不少坑,故记录下一开始心里也没底,想着6.5的版本能支持2022嘛,新建的选项里最高也就2016,抱着试试看的心态装了下,没想到成了~ 1.下载iso镜像推荐渠道:MSDN:https://msdn.itellyou.cn/微软官网:https://www.microsoft.com/zh-cn/software-download/msdn老网站不......
  • javasecript 生成 从2022年到当前季度的所以季度,排倒序
    javasecript 生成从2022年到当前季度的所以季度,排倒序 functiongetQuarter(year,quarter){returnyear+"年"+quarter+"季度";}functiongenerateQuarters(){varcurrentYear=newDate().getFullYear();varcurrentQuarter=Math.floor((......
  • 2023年5月31日吴曦远202283820011实验五
    task1_1.pycode:withopen('data1.txt','r',encoding='utf-8')asf:data=f.readlines()n=0print(data)forlineindata:ifnotline.strip()=='':n+=1print(n)output:note:ifdelet"not"......
  • Earthformer(2022.7)
    摘要:earthformer是基于一个时空注意力块,称为CuboidAttention。将数据分解为多个立方体块(cuboid),然后在方块上计算自注意力,有一个全局向量和所有方块连接和汇总。硬件:这个工作是在一块V100上完成的,开销很小。因为实验是在MNIST上做的,当然也做了降雨和ENSO,但总归不是那种大公司出......
  • matlab r2022b 在vbox下显示plot上下镜像的问题
    现象:matlabr2022b在vbox环境下plot显示会出现上下镜像的现象。原因:默认开启的OpenGL渲染模式造成的。解决:关闭OpenGL渲染模式或者代码改用"painters"渲染模式。set(gcf,'renderer','painters'); ......
  • ShardingSphere 荣获一等奖!2022 年中国开源创新大赛成绩单公布
    ​......
  • Visual Studio Code mac好用的微软免费代码编辑器
    VisualStudioCode是微软官方的编码工具,被称为"代码编辑器",支持众多的编程语言,包括C、C++、Python等。但是它仅支持文本编辑功能,所以一般使用它来完成一些简单的编程。但VisualStudioCode的功能并不只限于文本编辑,它还提供了很多其他功能。VisualStudioCode易于使用,它易......
  • Windows之Visual Studio Code添加右键菜单
    背景通常如果直接从官网下载VisualStudioCode安装包,我们只需要在安装界面勾选那两个复选框就行了,它会安装后帮我们自动添加右键支持,但是,如果我们使用全新的Winget手段安装,因为是静默的,所以没有机会做这个勾选,那么我们只能手动给VisualStudioCode添加右键菜单支持了,让我们通过......
  • 听说最近AI应用爆了?!来AI Studio玩转大模型应用
    飞桨AIStudio是基于百度深度学习平台飞桨(PaddlePaddle)的人工智能学习与实训社区,支持一站式模型在线开发与应用。提供优质开源模型、丰富的开源内容、功能强大的在线编程环境、云端超强GPU算力及存储资源,帮助开发者们快速创建和部署模型,实现一键运行即开即用。目前AIStudio......
  • Java体系面试题(2022)(三)
    全部试题及答案下载多线程&并发篇1、说说Java中实现多线程有几种方法创建线程的常用三种方式:1.继承Thread类2.实现Runnable接口3.实现Callable接口(JDK1.5>=)4.线程池方式创建通过继承Thread类或者实现Runnable接口、Callable接口都可以实现多线程,不过实现Runnable接......