升级到 .NET 4.0 后 C# 动态 JObject 不起作用
Posted
技术标签:
【中文标题】升级到 .NET 4.0 后 C# 动态 JObject 不起作用【英文标题】:C# dynamic JObject not working after upgrading to .NET 4.0 【发布时间】:2021-04-14 19:55:27 【问题描述】:我想开始在旧的 C# 项目中使用动态,因此我将目标设置为 framework 为 4.0,并包含参考 Microsoft.CSharp。
当我尝试创建一个动态 JObject 并为其分配一个值时,它给了我一个例外:
"Microsoft.CSharp.RuntimeBinder.RuntimeBinderException: “Newtonsoft.Json.Linq.JObject”不包含定义 '测试'
这是抛出异常的那一行:
dynamic ree = new JObject();
ree.test = true;
在我的 C# xamarin 项目中,它创建一个布尔类型的 JToken,值为 true 并将其分配给 ree
。
【问题讨论】:
那么你从.NET 4.0升级到了哪个版本? @dbc 我从 3.5 升级到 4.0 【参考方案1】:我通过重新安装 nuget 包解决了这个问题,因为它可能没有在旧版本中实现此功能。
【讨论】:
以上是关于升级到 .NET 4.0 后 C# 动态 JObject 不起作用的主要内容,如果未能解决你的问题,请参考以下文章
PInvoke在 2.0 3.0的时候正常 升级到4.0后出错。
SQL Server CE 数据库升级 3.5 到 4.0 C#
升级到 Skype for Business 2015 后 UCMA 4.0 应用程序中的 TLSFailureException