Articles of protobuf net

Mimica ProtoEnumAttribute con l’interfaccia ProtoBuf.Meta

In protobuf-net , puoi sovrascrivere il formato del filo per le enumerazioni con ProtoEnumAttribute modo: [ProtoContract] enum MyEnum { [ProtoEnum(Value=1)] Default, [ProtoEnum(Value=10)] Foo } Con questi attributi, dove Default passerà normalmente a 0 e Foo a 1 , verranno serializzati rispettivamente su 1 e 10 . Quello che sto cercando di fare è imitare questo […]

Serializzazione Protobuf-net su prese. Nessun costruttore senza parametri ha trovato ProtoException

Ho creato un’applicazione in cui la comunicazione tra processi viene eseguita tramite socket. La procedura inizia quando un client si connette al server che ho creato e invia un messaggio serializzato. Questo messaggio viene serializzato usando Protobuf-net, usando SerializeWithLengthPrefix e deserializzando usando DeserializeWithLengthPrefix. Il client invia messaggi al server che lo deserializza perfettamente, ma lo […]

InvalidOperationException durante la serializzazione di enum con protobuf-net

Sto cercando di serializzare un tipo di enum decorato con l’attributo [Flags] . La dichiarazione enum è la seguente: [Flags] [ProtoContract(EnumPassthru = true)] public enum Categories { [ProtoEnum(Name = nameof(Invalid), Value = 0x0)] Invalid = 0x0, [ProtoEnum(Name = nameof(A), Value = 0x1)] A = 0x1, [ProtoEnum(Name = nameof(B), Value = 0x2)] B = 0x2, [ProtoEnum(Name […]

Qual è l’equivalente di .proto di List in protobuf-net?

Per mantenere una certa coerenza, usiamo la generazione del codice per molti dei nostri modelli di oggetti, e una delle derivazioni di ciò sta generando i file .proto per ProtocolBuffers tramite un modulo di generazione separato. A questo punto, però, sono perplesso su come implementare la generazione per quando accade su un object List . […]

Comunicazione tra processi usando WCF e F #

Vorrei fare una semplice comunicazione one to one tra due lunghi processi F # in esecuzione usando F #. Si scambieranno informazioni regolarmente ogni ca. 5 secondi. Fino ad ora, ho raggiunto questo punto: #r “System.ServiceModel” #r “System.Runtime.Serialization” //#r @”d:\DLL\Protobuf\protobuf-net.dll” #time “on” open System.ServiceModel [] type IService = [] // [] abstract Test: float [] […]

Rilevazione ansible della protobuf-net: serializzare bambini e genitori

Sono nuovo alla serializzazione in generale e ancora più recente a protobuf. Ecco il mio problema, ho queste classi: [ProtoContract] class Controle { [ProtoMember(1, AsReference=true)] public HashSet ControlesInternes { get; set; } [ProtoMember(2)] public string TypeControle { get; set; } [ProtoMember(3)] public Dictionary Attributs { get; set; } [ProtoMember(4)] public int Ligne { get; set; […]

Le proprietà della class Base di ProtoBuf.net non sono incluse nella serializzazione della class derivata

Utilizzando l’ultima versione beta 2.0 di ProtoBuf.net sto provando a serializzare la class derivata (solo un esempio) e ottengo il file vuoto. Perché le proprietà della class base non sono serializzate? [ProtoContract] [Serializable] public class Web2PdfClient : Web2PdfEntity { } [ProtoContract] [Serializable] public class Web2PdfEntity : EngineEntity { [ProtoMember(1)] public string Title { get; set; […]

Posso riutilizzare le istanze di oggetti per evitare allocazioni con protobuf-net?

Contesto: si basa su una domanda che è stata fatta e poi cancellata prima che potessi rispondere – ma penso che sia una buona domanda, quindi l’ho riordinata, riformulata e ripubblicata. In uno scenario high-throughput che usa protobuf-net, dove un sacco di allocazioni sono un problema (in particolare per GC), è ansible riutilizzare gli oggetti? […]

Qual è il modo corretto di inviare dati in byte a Unity3D da un plug-in C?

Solo una domanda di curiosità qui. Quando si scrivono plugin per Unity sulla piattaforma iOS, i plug-in hanno una funzionalità di callback limitata da nativa a gestita (dal plug-in e quindi a Unity). Fondamentalmente questa documentazione: la documentazione Unity del plugin di iOS afferma che la firma della funzione che è ansible richiamare è questa: […]

protobuf.net Sottotipo inatteso

Sto incontrando questa eccezione nel mio progetto usando Protobuf.net: InvalidOperationException “Unexpected sub-type: foo” Ho una class che sto inviando che assomiglia a questo: class message { list listOfBars; } pippo eredita dalla barra, tuttavia protobuf sembra soffocare su questo e generare l’eccezione sopra. C’è un modo per aggirare questo? Devo essere in grado di contenere […]