C'è un modo per serializzare un dizionario con i buffer di protocollo, o dovrò usare Thrift se ho bisogno di questo?dizionario nel buffer di protocollo
risposta
La gente di solito annotare il dizionario come un elenco di coppie chiave-valore, e quindi ricostruire il dizionario all'altro capo del filo.
message Pair {
optional string key = 1;
optional string value = 2;
}
message Dictionary {
repeated Pair pairs = 1;
}
C'è un modo per fare la stessa cosa con un tipo dinamico? Ho un 'Dictionary
Bene, no. Protobuf non è un protocollo di serializzazione di oggetti generali. È necessario definire i messaggi di protobuf per tutti i dati che si desidera serializzare. (Onestamente, se hai una
@Mike Dovresti creare un campo per ogni tipo che * potrebbe * essere, che è un bug che aspetta solo di accadere. –
È possibile controllare il pacchetto ProtoText.
Si supponga di voler serializzare un dict person_dict
in un oggetto protobuf predefinito PersonBuf
definito nel modulo personbuf_pb2
.
In questo caso, per usare prototesto,
import ProtoText
from personbuf_pb2 import PersonBuf
obj = PersonBuf()
obj.update(person_dict)
Per i futuri cercatori di risposta, ProtoBuf now supports Maps nativamente:
message MapMessage
{
map<string, string> MyMap = 1;
}
prega di notare che Mappe ancora non può essere ripetuto. – mattes
- 1. Registrazione buffer di protocollo
- 2. File di input mancante con protoc nel buffer di protocollo
- 3. Alternative ai buffer di protocollo
- 4. Buffer di protocollo, dove usarli?
- 5. Protocollo Buffer: Enum problema
- 6. Buffer protocollo Delphi?
- 7. Java serializzazione con protocollo Buffer
- 8. buffer protocollo Java RPC Pila
- 9. Buffer per Android e Protocollo
- 10. Installare i buffer di protocollo su Windows
- 11. creazione di un dizionario python come oggetto da buffer di protocollo da utilizzare nei panda
- 12. Scala Akka e buffer di protocollo
- 13. Buffer del protocollo di Google in C#
- 14. Estensione dei buffer di protocollo in Java
- 15. Come utilizzare i buffer di protocollo?
- 16. Buffer di protocollo C# .net - supporto protobuf-net per serializzare il dizionario dei valori degli oggetti?
- 17. Compilatore dei buffer del protocollo Scala
- 18. Boost.Asio con i buffer del protocollo google
- 19. I buffer del protocollo Google confrontano
- 20. Penalità di prestazioni di getSerializedSize() in buffer di protocollo
- 21. errore di protocollo Buffer sulla compilazione durante il check GOOGLE_PROTOBUF_MIN_PROTOC_VERSION
- 22. Progetto Python utilizzando buffer di protocollo, Problemi di distribuzione
- 23. Nei buffer del protocollo di Google, qual è il protocollo/modello di protocollo adatto per le eccezioni?
- 24. Uso buffer di protocollo per la registrazione binaria
- 25. buffer di protocollo google vs JSON vs XML
- 26. Buffer del protocollo C++, invio di array intero
- 27. Come creare un buffer di protocollo da Android NDK
- 28. come utilizzare il buffer di protocollo in asp.net vnext?
- 29. Esistono database che supportano i buffer di protocollo?
- 30. Python nel buffer Vim?
duplicare http://stackoverflow.com/questions/3874024/how-does- protobuf-net-supporto-per-dizionario-KeyValuePair fabbrica –
Non proprio duplicare. Quella domanda riguardava i legami .net. OP non specifica l'ambiente della lingua. – JesperE