如何解决从 Visual Studio 2019 移回 2017 时的 CS1545
我有一个使用 CsvHelper 的项目。这是在使用 Visual Studio 2019 作为 .Net Core 3.1 控制台应用程序的计算机上开发的。我已将代码移到只有 Visual Studio 2017 的计算机上。框架版本已改回 2.1,因为这是所有可用的,无需安装其他框架,不应该成为问题。 (我还尝试了一个面向 4.6.1 的 .Net Framework 控制台应用程序,结果相似)。 我以前工作的代码不再编译时出现 CS 1545 错误(这是来自我的许多测试用例之一,但它是相同的错误):
错误 CS1545 属性、索引器或事件“CsvConfiguration.Delimiter” 不受语言支持;尝试直接调用访问器 方法 'CsvConfiguration.get_Delimiter()' 或 'CsvConfiguration.set_Delimiter(?)' ConsoleApp3 C:\Programming\ConsoleApp3\ConsoleApp3\Program.cs 16 活动
如上所述,框架版本重新设置为 2.1。我还尝试更改 *.csproj 中的 LangVersion(各种值,包括 7.0、latest 和 7.3),因为该错误专门针对语言。我还更改了 2019 年 PC 上的 Framework 和 LangVersion(以匹配 2017 年 PC),并且它编译和运行良好。该代码最初是针对 CsvHelper 版本 21.3.0 编写的,我已经恢复到该版本,刷新了 Nuget 缓存,删除了 bin 和 obj 文件夹,并清理了解决方案(以及所有这些在开始使用新的控制台应用程序之前)。
我标记 CsvHelper 是因为我正在使用它,但老实说,我认为这不是罪魁祸首。我怀疑 Visual Studio/Nuget 存在问题。搜索 CS1545 并没有产生任何有希望的结果。
[更新] - 看起来改回 19.0.0 版解决了这个问题,所以在那之后出了点问题。也许我太愿意把 VS / Nuget 扔到公交车底下。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。