【c#-无法使用接口确定i => i.Id的序列化信息】教程文章相关的互联网学习教程文章

C#类序列化映射【代码】

我正在寻找有关如何实现和/或更改以下类的类序列化行为的提示,想法. 简化(不完整)样本类:[Serializable] public class Choobakka {public string Name { get; set; }public VariableList<Item> Stuff { get; set; } } [Serializable] public class Item {public string Name { get; set; }public string Value { get; set; } } [Serializable] public sealed class VariableList<T> : AVariableList<T> {public new ItemList<T> I...

C# 使用BinaryFormatter序列化对象【代码】【图】

使用BinaryFormatter二进制类型。再次注意BinaryFormatter类型的两个关键方法:Serialize()和Deserialize()。 下面是Serialize()和Deserialize()介绍: Serialize():将一个对象图按字节的顺序持久化到一个指定的流。 Deserialize():将一个持久化的字节顺序转化为一个对象图。 假设已经建立了JamesBondCar的一个实例,修改了一些状态数据,并想将间谍汽车(JamesBondCar)持久化到一个*.dat文件中。第一个任务是建立*.dat文件本身。这...

c# – 当类型不匹配时,如何使ASP.NET Web API反序列化失败【代码】

我在ASP.NET Web API(版本5.1.2)中无声地反序列化时遇到问题.我希望反序列化引发错误,但我无法找到它的配置. 我的具体(简化)案例是这样的.客户端应用程序(AngularJS)将HTTP POST请求发送到ASP.NET Web API后端.作为有效载荷,有一堆字符串:["ABC100", "ABC200", "ABC300"]但是,服务器需要一个整数列表:List<int> Ids { get; set; }最终发生的事情是反序列化失败,Ids列表将为空并且没有错误.Ids: []当然也需要修复不匹配,但在我看来...

c# – JSON.NET,如果预期的对象无法反序列化,则实例化回退对象【代码】

我有一个项目树,我正在尝试使用JSON.NET反序列化.有些情况(例如重命名节点类型)可能会导致树上的节点无法反序列化. 在这些情况下,我想插入一个节点的默认实例(可能是其他类型)来代替未反序列化的对象. 这样,我的用户仍然可以加载他们的保存文件,获得他们必须修复的“空”节点……但是,至少他们仍然可以加载他们的文件! 我一直在做一些研究,并且有一些事情要尝试使用SerializationBinder和/或在序列化程序的回调中破解一些错误处理...

c# – Xml反序列化 – 将两个元素合并为一个List对象【代码】

我有一个XML文档,使用反序列化,有没有办法将两个元素组合成一个对象? XML示例:<Parameter1>3</Parameter1> <Parameter2>4</Parameter2>我想创建一个包含项目3和4的列表(类型为Parameter). 我尝试过使用XmlArrayItem,例如:[XmlArrayItem("Parameter1")] [XmlArrayItem("Parameter2")] [XmlArray] public Parameter[] Parameters; // have also tried this as public List<Parameter> Parameters = new List<Parameter>();我尝试过...

c# – 出错“无法反序列化响应”【代码】

我开始学习Microsoft Bot Framework,但是当我尝试使用Connector时,它总是返回:“message”: “An error has occurred.”,“exceptionMessage”: “Unable to deserialize the response.”,“exceptionType”: “Microsoft.Rest.RestException”,这是代码public async Task<Message> Post([FromBody]Message message){try{if (message.Type == "Message"){// calculate something for us to return//int length = (message.Text ??...

c# – .NetCore MVC反序列化【代码】

在.netcore应用程序中,我想提供以下(简化):// Create a new record, assume it returns an ID=1 https://site/MyController/Save?FirstName=John&LastName=Doe&Status=Active// Update the record without full state PUT https://site/MyController/1 {'DOB': '1/1/1970','Status': null }我想将这第二个电话翻译成:UPDATE MyModel SET DOB = '1/1/1970' AND Status=NULL WHERE Id = 1我当然可以在MyController中编写我的Create...

如何在C#反序列化期间进行引用修复?【代码】

如何使用C#序列化框架引用修复(后处理)? 我有一个对象图,其中的对象引用其他对象.它们都实现了ISerializable接口,并且它们都具有实例ID,因此在序列化状态下表示引用很容易. krux是当调用??反序列化构造函数时,该对象引用的所有对象可能都没有被反序列化,因此引用不能设置为有效对象.我找不到任何方法可以挂钩C#序列化框架中的后处理步骤来进行参考修复.有办法吗? 根据要求,这是一个人为的课程,我认为突出了问题.[Serializable] p...

c# – asp.net核心数据保护:反序列化令牌时抛出异常【代码】

我使用redis作为数据保护存储在webfarm上运行asp.net核心. 我的应用程序负载很重,所以我不断从redis得到以下错误:Timeout performing EVAL, inst: 9, queue: 1448, qu: 0, qs: 1448, qc: 0,wr: 0, wq: 0, in: 65536, ar: 0, clientName: xxxx使用microsoft recommendation在startup.cs初始化redis的方式是var redis = ConnectionMultiplexer.Connect("<URI>"); services.AddDataProtection().PersistKeysToRedis(redis, "DataProt...

从Web服务引用的C#类未正确反序列化【代码】

我有一个Web服务,它将类(来自Web服务的类)序列化为MSMQ,然后Windows服务正在检查队列和反序列化. Windows服务有一个Web引用来获取类. 如果我在Web服务中反序列化,一切都很好.但是,当我从Windows服务反序列化时,一切都有效,除了两个字符串数组出现为null,所以我相信有些东西没有通过Web引用正确传输. 这是来自相关课程的片段:[Serializable, XmlInclude(typeof(EmailType))] public partial class Email { [System.Xml.Serializati...

c# – XmlSerializer.通过NetworkStream反序列化块【代码】

我正在尝试通过网络流发送XML可序列化对象. 我已经在UDP广播服务器上使用它,它从本地网络接收UDP消息.这是服务器端的一个片段:while (mServiceStopFlag == false) {if (mSocket.Available > 0) {IPEndPoint ipEndPoint = new IPEndPoint(IPAddress.Any, DiscoveryPort); byte[] bData;// Receive discovery messagebData = mSocket.Receive(ref ipEndPoint);// Handle discovery messageHandleDiscoveryMessage(ipEndPoint....

c# – 我应该将哪种XML序列化方法用于公共API?

我正在编写一个程序来构建一个树结构,该结构由继承自抽象Node类的类组成.我的程序中内置了许多不同类型的节点.但是,我还希望允许更高级的用户能够引用我的库并编写自己的Node派生.然后在我的应用程序通过Assembly.Load()启动时加载这些插件库.因此,我的应用程序使用的所有潜在节点类型在运行时才会知道. 另外,我希望能够将这些树序列化和反序列化为XML文件.我有一些XMLSerializer,DataContractSerializer和实现IXmlSerializable的经...

使用C#/ Json序列化Web服务中的结构

我正在编写一个非常简单的C#HttpHandler(ashx)用作Web服务,并打算使用Json.Net跨服务器边界序列化一个小的(4-5字段)结构. 我有什么选择能够在Web服务端序列化结构并将其反序列化为另一端的正确类型(恰好是一个单独的c#web应用程序),而无需或多或少地复制和粘贴定义每一端的结构?现在,struct是webservice和消费网页中的嵌套类型.我可以将它提取到自己的类程序集中,并在两端添加引用,但这似乎并不比在任何一端维护定义简单得多.我还...

c# – 对实例的序列化和反序列化做出反应

我有一个我正在序列化的课程.我用[Serializable]注释它,我正在使用二进制序列化器.一切正常. 但后来我引入了新属性,这些属性无法序列化(假设它们包含很多关于GUI的混乱,不需要记录).我可以根据类的其他属性计算这些属性. 当我序列化时,我需要做两次 – 清理混乱并进入准备序列化的稳定状态.反序列化 – 再次计算所有需要的属性. 我需要对“事件”做出反应,实例正在被序列化/反序列化. 但是我找不到这些事件,因为我没有实现接口ISer...

c# – Dictionary ToList序列化的问题【代码】

我尝试使用ToList选项序列化字典的值.我发现在deserializtion过程中,我对所有序列化的对象都获取了null当我使用内存流时它没有发生,当我使用.Net对象作为字典中的类型时没有发生.下面是我创建的示例代码,用于显示问题这段代码的输出是字典:0-0字典:1-1清单:0清单:1字典:0-Null字典:1-Null清单:0class Program {static void Main(string[] args){A state = new A();Stream stream = File.Open("D:\\temp\\temp.txt", FileMod...

序列化 - 相关标签