【c# – 如何确保T可以按固定的字节数进行序列化?】教程文章相关的互联网学习教程文章

C# 序列化与反序列化之DataContract与xml对子类进行序列化的解决方案【代码】

C# 序列化与反序列化之DataContract与xml对子类进行序列化的解决方案 1、DataContract继承对子类进行序列化的解决方案 第一种是在 [DataContract, KnownType(typeof(继承的子类))]添加 KnownType(typeof(继承的子类))即可,第二种是在序列化的时候,添加类型 DataContractSerializer dcs = new DataContractSerializer(typeof(T),new Type[] { typeof(继承的子类1), typeof(继承的子类1) }) using System.Runtime.Serialization;na...

C# 序列化与反序列化Serialization之Json Xml Binary Soap JavaScript序列化【代码】

所谓的序列化其实就是把一个内存中的对象信息转化成一个可以持久化保存的形式,方便保存数据库和文件或着用于传输, 序列化的主要作用是不同平台之间进行通信与信息的传递保存等,常用的有序列化有Json Xml Binary Soap JavaScript序列化等,当然我们也可以使用第三方的序列化类库,第三方的序列化类库可以参照网上的,这里不再赘述, 本文主要介绍Json Xml Binary Soap JavaScript等6种序列化的方法, 添加引用以下类库using Syst...

C#-Protobuf-net枚举序列化行为在版本中更改. 2.3.0【代码】

如果2.3.0之前的任何序列化对象包含枚举值并且使用带有InferTagFromNameDefault而不是ProtoMember的DataMember,则在2.3.0或更高版本中将无法正确反序列化.[DataContract] public class ClassWithEnum {[DataMember]public MyEnum Enum { get; set; } }public enum MyEnum {FirstValue,SecondValue }我上这堂课使用此代码对其进行序列化.{RuntimeTypeModel.Default.InferTagFromNameDefault = true;var v = new ClassWithEnum { Enu...

C#-单声道反序列化的麻烦【代码】

任何人都知道为什么C#中的数据协定序列化程序生成的以下XML在Windows上可以正常工作,而在Mono上的Linux下却不能正常工作吗? XML:<Message i:type="UserMessage" xmlns="http://schemas.datacontract.org/2004/07/NetTunnel" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><type>UserMessage</type> <nick>Unnamed</nick><services><Service><enabled>true</enabled><port_ranges i:nil="true"/> <service_name>vent</ser...

c#-从ASP.NET中的RSS feed序列化数据【代码】

我希望用户指定一个RSS提要地址并从中序列化信息.我对XML格式不感兴趣,但是从XML中填充了一个强类型的对象.我的问题是,是否有所有RSS feed都支持的标准(它们都有日期,标题等)吗?如果是这样,是否有描述此内容的XSD.如果没有,如何处理将RSS feed序列化为ASP.NET中的对象? 编辑:SyndicationFeed的项目具有以下属性: > Title.Text->给我们头衔>摘要.文本->给出总结 问题1-摘要包含html标签.有没有办法剥离它们?我只对文字感兴趣问...

C#-序列化ASPX页面?【代码】

我处于需要使用外部会话状态服务器的情况下,该服务器需要将所有会话序列化.我一直在尝试使用[Serializeable()]属性使存储在会话中的所有类可序列化. 但是,我不断收到以下错误:Unable to serialize the session state. 在StateServer和SQLServer模式下,ASP.NET将序列化会话状态对象,因此,不允许不可序列化的对象或MarshalByRef对象.如果自定义会话状态存储在“自定义”模式下进行了类似的序列化,则存在相同的限制. 但是更有趣的是堆...

c#-如何使用protobuf-net嵌入类型信息以进行反序列化?【代码】

我希望能够以保留/嵌入类型信息的方式序列化IMessage的具体实例(类似于Json.NET中的可用信息),以便在反序列化时可以使用类型信息来实现这些信息具体实例.我很清楚下面的反序列化方法不起作用.任何有关如何更改它们以使它们起作用的指导将不胜感激.public interface IMessage {} public interface IEvent : IMessage {} [ProtoContract] public class DogBarkedEvent : IEvent {[ProtoMember(0)]public string NameOfDog { get; set...

c#-使用setter方法进行Json.Net反序列化【代码】

使用下面的示例是否可以在反序列化期间使用Json.Net中的AddChild Setter方法填充子代列表?public class Foo {private IList<Foo> _children;private Foo _parent;public Foo(){_children = new List<Foo>();}public string Name { get; set; }public IEnumerable<Foo> Children{get { return _children.AsEnumerable() }}public void AddChild(Foo child){child._parent = this;_children.Add(child);} }解决方法:您可以通过创建J...

c#-不要序列化或从序列化的DateTime对象中删除TimeZone【代码】

我得到的奇怪任务是使用XML序列化序列化LARGE对象.该对象包含多个嵌套的UserDefined类以及多个DateTime字段. DateTime数据的要求是,它必须始终显示在最初创建和设置数据的用户的时区中.因此,我不能使用UTC或Local时间,因为在反序列化时,它们与以前不一样.我也无法以UTC显示值,它们必须以本地时间显示.我需要的是一种奇怪的序列化格式,它表示“绝对本地时间”的概念……这将是“没有TimeZone的本地时间”. 我可以使用Regex从日期字符...

c#-序列化使用Json.Net声明为新的继承属性不起作用【代码】

Json.Net在序列化子类中的重写属性时没有问题.public override ICollection<Person> Persons { get; set; }但是,如果我尝试对该属性使用new,则序列化将失败.也不例外.人只是从不序列化.public new ICollection<Person> Persons { get; set; }为什么是这样? (我知道,这个示例没有多大意义.这只是一个示例.以后的目标是能够更改属性public new ICollection< PersonDto> Persons {get; set;}的数据类型)解决方法:我发现了一种无需创建...

C#-RESTful部分请求和部分序列化【代码】

我想执行动态查询部分序列化. 假设我有这样的资源:public class Unicorn {public string Id { get; set; }public string Color { get; set; }public int Size { get; set; }public DateTime BirthDate { get; set; } }用户发出这样的部分RESTful请求:GET /unicorn/{id}/?fields=id,color如果请求XML,则结果应为:<Unicorn><Id>10</Id><Color>Purple</Color> </Unicorn>对于杰森{"Unicorn":{"Id":10,"Color":"Purple"} }我目前正在...

C#model序列化xml【代码】

private string Serialier<T>(T model){using (StringWriter streamWriter = new StringWriter()){XmlSerializerNamespaces ns = new XmlSerializerNamespaces();ns.Add("", "");XmlSerializer xmlSerializer = new XmlSerializer(model.GetType());xmlSerializer.Serialize(streamWriter, model,ns);return streamWriter.ToString();}}参数model是数据模型

c#-如何强制svcutil使用xml序列化而不是运行时序列化

我正在使用服务引用(xsd Visual Studio工具)生成一个cs(Reference.cs),以便对某些类进行序列化和反序列化,但我需要使用System.Xml.Serialization而不是System.Runtime.Serialization.我该如何存档?我一直在尝试一些高级选项,例如“引用的程序集中的重用类型”,并取消选中选项,但是什么也没有. 提前致谢.解决方法:从documentation开始/serializer:XmlSerializer Generates data types that use the XmlSerializer for serializatio...

C#-数据包更有效的序列化【代码】

我正在创建一个程序,该程序必须在客户端和服务器之间高效地发送数据.为了清楚地组织数据包,我正在使用序列化.但是,当我序列化这些数据包时,数据不必要地大.我将解释我在做什么,以便您可以了解我的需求. 我的数据包类是这样工作的.我有一个Packet对象:using System; using System.IO; using System.Runtime.Serialization.Formatters.Binary;[Serializable] public class Packet {public static byte[] Serialize(Object o){Memory...

c#-从json反序列化字典,可能没有Newtonsoft.Json吗?【代码】

帮我反序列化Dictionary对象. 举例来说,我上课了[Serializable] public class MyClass {/// <summary>/// some class variables/// </summary>public string variable_A;public decimal variable_B;/// <summary>/// constructor for example/// </summary>public MyClass(string s, decimal d){variable_A = s;variable_B = d;} }然后创建Dictionary-以字符串为键,以MyClass对象为值:Dictionary<string, MyClass> myDictionary =...

序列化 - 相关标签