Articles of Protobuf Net,

Comment utiliser protobuf-net avec des types de valeurs immuables?

Supposons que j’ai un type de valeur immuable comme ceci: [Serializable] [DataContract] public struct MyValueType : ISerializable { private readonly int _x; private readonly int _z; public MyValueType(int x, int z) : this() { _x = x; _z = z; } // this constructor is used for deserialization public MyValueType(SerializationInfo info, StreamingContext text) : this() […]

Protobuf-net Serializing System.Object avec DynamicType lève une exception

Dans mon application, je sérialise les messages à envoyer sur le réseau à l’aide de protobuf-net. Chaque message contient une liste de paires clé-valeur pour les informations d’en-tête. Cependant, je rencontre une exception et j’ai pu la reproduire avec un exemple très simplifié: [TestFixture] public class SerializationTests { [ProtoContract] public class MyType { [ProtoMember(1, DynamicType […]

Utilisation de la mémoire pour la sérialisation de tableaux d’octets fragmentés avec Protobuf-net

Dans notre application, nous avons des structures de données qui contiennent, entre autres choses, une liste d’octets fragmentée (actuellement exposée sous forme de List ). Nous réduisons les octets, car si nous permettons aux tableaux d’octets d’être placés sur le gros tas d’objects, nous finissons par souffrir de la fragmentation de la mémoire. Nous avons […]

protobuf-net: récursion possible détectée

Je reçois une exception essayant de sérialiser un graphe d’object (pas très profond). Une partie significative de celui-ci est comme ceci: [ERREUR] EXCEPTION FATALE NON GÉRÉE: ProtoBuf.ProtoException: Récursion possible détectée (offset: 5 niveau (s)): rouge chez ProtoBuf.ProtoWriter.CheckRecursionStackAndPush (object) dans ProtoBuf.ProtoWriter.StartSubItem , bool) Le graphique représente la structure de fichiers / répertoires et mon modèle (simplifié) […]

Performances XML et binarys pour la sérialisation / désérialisation

Je travaille sur une application-cadre compacte et j’ai besoin d’améliorer les performances. L’application fonctionne actuellement hors ligne en sérialisant les objects en XML et en les stockant dans une firebase database. À l’aide d’un outil de profilage, j’ai pu constater qu’il s’agissait d’un temps système considérable, ce qui ralentissait l’application. Je pensais que si je […]

Comment intégrer des informations de type à des fins de dé / sérialisation à l’aide de protobuf-net

J’aimerais pouvoir sérialiser des instances concrètes d’IMessage de manière à ce que les informations de type soient conservées / incorporées (comme dans Json.NET, par exemple), afin que, lors de la désérialisation, ces informations de type puissent être matérialisées. cas concrets. Je suis bien conscient que les méthodes de dé / sérialisation ci-dessous ne fonctionnent pas. […]

Quelle est la meilleure façon de gérer les relations parent-enfant avec ProtoBuf-Net

Cette exception est émise sur mon application de test pour la sérialisation avec ProtoBuf. SceneryFile:temp.ad2 ProtoBuf.ProtoException: Possible recursion detected (offset: 2 level(s): SceneryFile: temp.ad2 at ProtoBuf.ProtoWriter.CheckRecursionStackAndPush(Object instance( in c:\protbuf-net\protobuf-net\ProtoWriter.sc:line321 J’ai trouvé ces autres questions protobuf-net: récursion possible détectée Récursion possible détectée dans Protobuf-net: sérialiser les enfants et les parents La profondeur de mon arbre n’est […]

Sérialiser un dataTable en utilisant protobuf

C #, Comment utiliser ProtoBuf .NET pour sérialiser un dataTable? Puis-je s’il vous plaît avoir un exemple?

ProtoBuf-net AsReference nécessite un constructeur public dans Activator.CreateInstance?

En travaillant sur 2 de mes cours qui ressemble à ceci (minime) using System; using System.Collections.Generic; using System.Collections; using System.ComponentModel; using System.Drawing; using System.Windows.Forms; using System.IO; using ProtoBuf; namespace Sandbox { public partial class Form1 : Form { public Form1() { Family family = new Family(); Child child1 = new Child(1); Child child2 = new […]

de protobuf-net n’a pas fonctionné

J’utilise protobuf-net v2 beta r431 pour les applications C # .net 4.0. Dans mon application, j’ai un Dictionary que je dois sérialiser. Une classe MyClass implémente l’interface IMyClass . Selon les documentations de protobuf j’ai écrit le code comme suit: [ProtoContract] [ProtoInclude(1, typeof(MyClass))] public interface IMyClass { int GetId(); ssortingng GetName(); } [ProtoContract] [Serializable] public […]