首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在.NET内核中反序列化NetDataContractSerializer数据?

如何在.NET内核中反序列化NetDataContractSerializer数据?
EN

Stack Overflow用户
提问于 2018-10-26 13:39:21
回答 3查看 2.3K关注 0票数 1

我有一个现有的.NET框架WCF服务,它返回使用NetDataContractSerializer序列化的数据,这是由各种.NET框架客户端使用的。

我现在想要编写一个新的客户端应用程序,它也将使用它,但我的新客户端将是用.NET核心编写的。

Windows Compatibility Pack for WCF提供了使用.NET服务所需的大多数API,但是似乎缺少这个关键的NetDataContractSerializer类。

有没有办法将这些数据反序列化到.NET核心应用程序中?类型本身位于一个共享的.NET框架程序集中,该程序集恰好与.NET标准兼容,因此可以将其加载到.NET核心应用程序中。

EN

回答 3

Stack Overflow用户

发布于 2018-11-05 07:36:10

这似乎是不可能的,因此我在.NET核心github上打开了这个问题来跟踪这个功能:

https://github.com/dotnet/corefx/issues/33120

票数 1
EN

Stack Overflow用户

发布于 2019-08-30 04:41:42

虽然NetDataContractSerializer在.Net内核中不可用,但您可以尝试此NetDataContractSerializer library端口。这是几乎完整的.Net框架System.Runtime.Serialization库的.Net核心移植。

票数 0
EN

Stack Overflow用户

发布于 2018-10-26 17:51:23

如您所知,DotnetCore不支持NetdataContractSerializer类。https://docs.microsoft.com/en-us/dotnet/api/system.runtime.serialization.netdatacontractserializer?view=netframework-4.7.2

DataContractSerializer由dotnetcore支持,我们可以使用ReadObject方法来读取流并返回反序列化的对象。

代码语言:javascript
复制
Product p1 = (Product)serializer1.ReadObject(ms);

https://docs.microsoft.com/en-us/dotnet/api/system.runtime.serialization.datacontractserializer?view=netcore-2.1

对于这些跨平台的项目,我建议您使用仅依赖于.Net标准的NewtonSoft.Json库。

https://www.nuget.org/packages/Newtonsoft.Json/

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53002135

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档