问题标签 [datacontractjsonserializer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
9 回答
132971 浏览

c# - 如何将 C# 匿名类型序列化为 JSON 字符串?

我正在尝试使用以下代码将匿名类型序列化为 JSON:

但是,执行此操作时出现以下异常:

类型 '<>f__AnonymousType1`3[System.Int32,System.Int32,System.Object[]]' 无法序列化。考虑使用 DataContractAttribute 属性对其进行标记,并使用 DataMemberAttribute 属性标记您想要序列化的所有成员。有关其他支持的类型,请参阅 Microsoft .NET Framework 文档。

我不能将属性应用于匿名类型(据我所知)。还有其他方法可以进行此序列化还是我遗漏了什么?

0 投票
1 回答
8153 浏览

c# - 使用 DataContractJsonSerializer 作为 json 数组序列化对象

我有一个包含项目列表的类。我想使用 DataContractJsonSerializer 作为 json 数组将此类的实例序列化为 json。例如。

当序列化为 json 时,它应该是这样的:

[{"Name":"one","Description":"desc1"},{"Name":"two","Description":"desc2"}]

0 投票
1 回答
492 浏览

c# - 访问 DataContractJsonSerializer通过重构的 foreach 循环的属性

我有下面的代码。

该行string content = twitterMsg.text;正在为 twitterMsg 创建错误“使用未分配的局部变量”。我似乎无法访问我收藏TwitterSearchResponse.results.text中的字段。DataContractJsonSerializer<TwitterMain>

TwitterSearchResponse.results是一个数组(一组对象属性),其中包含几个字符串字段,名称如textuser_info

有人能帮忙吗??

更新了下面的代码。我仍然很困惑为什么我不能TwitterSearchResponse.results正确地迭代我的并分配content = twitterMsg.text

对于它的价值,这是我的 DataContractJsonSerializer 方法:

这是问题所在的原始发布代码。

0 投票
1 回答
5796 浏览

c# - Way to Deserialize JSON from HttpWebResponse without 3rd party frameworks

I'm trying to keep from depending on open source or third party libraries such as Json.NET to parse incoming JSON from an HttpWebResponse. Why? Because the more reliance on open source frameworks to aid in your implementations, the more your app has to rely on those dependencies...I don't like my apps to be depenent on a lot of libraries for many reasons if at all possible. I'm ok with using stuff like Enterprise Library because it's supported by MS but I'm taking more open source libraries.

Anyway, I'm trying to figure out the best way to parse incoming JSON server-side in .NET 3.5.

I know this is going to get a lot of responses and I've even used the .NET 3.5 JavaScriptSerializer to serialize data to JSON but now I'm trying to figure out the best and most simple way to do the reverse without again, having to use a 3rd party / open source framework to aid in this.

0 投票
2 回答
1087 浏览

.net - .NET 将 JSON 附加到已使用 DataContractJsonSerializer 序列化的字符串

我正在使用 DataContractJsonSerializer 将对象序列化为 json,然后使用 AJAX 返回客户端。我现在需要序列化另一个对象以与它一起返回。问题是围绕 JSON 的 MS“d”,这阻止了我简单地将字符串连接成单个 JSON 字符串。

回报:

任何建议将不胜感激。我宁愿不必再次调用服务器来获取另一个对象。

0 投票
1 回答
2691 浏览

json - 使用 DataContractJsonSerializer

我正在尝试托管一个通过提供 json 输出流来响应传入请求的 WCF 服务。我有以下类型

在我的 *.svc.cs 文件中,我执行以下操作

所以本质上我正在尝试将列表序列化为 Json,但在“WriteObject”执行时出现以下错误:-

服务器在处理请求时遇到错误。异常消息是 'Type 'System.Collections.Generic.List`1[[HubContentCore.Domain.HubCommon, HubContentCore, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]',数据合约名称为 'ArrayOfHubCommon:http ://schemas.datacontract.org/2004/07/HubContentCore.Domain' 不是预期的。将任何静态未知的类型添加到已知类型列表中 - 例如,通过使用 KnownTypeAttribute 属性或将它们添加到传递给 DataContractSerializer 的已知类型列表中。

我在这里想念什么?

提前致谢。

0 投票
2 回答
7522 浏览

c# - 反序列化混合类型的 JSON 数组

我在使用 DataContractJsonSerializer 类反序列化混合类型的 JSON 数组时遇到问题。我花了很多时间寻找无济于事的解决方案,所以我想我会继续在这里问。

基本上,我得到一个如下所示的 JSON 字符串。我想让数组反序列化为一个列表,其中位置 0 具有 Int32,位置 1 具有字符串,位置 2 具有我的自定义类的实例。

如果我只是像这样创建一个序列化:

实际上,我在位置 0 处得到一个 Int32,在位置 1 处得到一个字符串。但是在位置 2 处,我只得到一个空对象。

有谁知道我正在尝试做的事情是否可能?我无法控制我正在使用的 JSON 的结构。如果可能,我想在不使用第三方程序集的情况下完成此操作。

0 投票
2 回答
2540 浏览

json - 反序列化 JSON 二维值数组

我有一个 JSON 格式的二维值数组:

每对实际上包含一对不相关的读数,每分钟有一对。所以在第一分钟,读数 1 是57,读数 2 是2。在第二分钟,读数相同,依此类推。

现在,我想将其转换为可在 .Net 中使用的格式来绘制每个读数。这可以是两个平行数组,一个用于第一个值的读数,每分钟一个元素,一个数组用于第二个值的所有读数。或者如果这更容易,它可能是一个二维数组。

我尝试使用DataContractJSONSerializer没有任何运气:

whereSubmissionDataRow只是一个类,每个读数都有一个属性,但反序列化器不知道在哪个属性中放入什么值!

0 投票
2 回答
16297 浏览

c# - System.Runtime.Serialization.Json.DataContractJsonSerializer.WriteObject 在序列化时忽略 NonSerialized 属性

如果我尝试使用 System.Runtime.Serialization.Json.DataContractJsonSerializer 序列化以下 ClassToSerialize 类的对象

返回字符串仍然包含 IsMf 属性及其值。NOnSerialized 属性被忽略。有人可以建议在使用 DataContractJsonSerializer 时使用什么属性,以免序列化某些属性

0 投票
1 回答
1651 浏览

asp.net - DataContracts 是如何工作的?- 反序列化 Json

我从这个 SO question中获取了一个示例,并构建了我自己的自定义 Google Maps 对象,用于反序列化 json 对象。

现在代码像冠军一样工作,但我只需要解释它为什么/如何工作。序列化程序是否“尝试”匹配名称,或者正在发生其他事情。

这究竟是在做什么?

这是工作代码。

这是 GeolocationLatLon Poco

当我调用代码时,它真的很简单。
请注意,这是一个 MVC 控制器,除了显示我在做什么之外,它与问题“真正”无关

最后的结果是

{“纬度”:“50.124300”,“经度”:“-114.4979990”}