soy nuevo en los búferes de protocolo y estoy usando protobuf-net para VS2010. de lo que estoy leyendo aquí Dictionary in protocol buffers, no parece que protobuf pueda serializar un diccionario con tipos de objetos como valores. pero aquí en su sitio leí esto:Buffers de protocolo C# .net - ¿soporte protobuf-net para serializar diccionario de valores de objeto?
Notas sobre los tipos
soportados:
clases personalizadas que: se marcan como técnica de contrato tiene un constructor sin parámetros para Silverlight: son públicos muchos común primitivas, etc. matrices de una sola dimensión: T [] List/IList Dictionary/IDictionary cualquier tipo que implemente IEnumerable y tenga un método Add (T) El código asume que los tipos serán mutables alrededor de los miembros elegidos. En consecuencia, las estructuras personalizadas no son compatibles, ya que deben ser inmutables.
que parece que es compatible.
puedo compilar correctamente una lista de objetos de este modo:
message ValuesObject {
optional int32 SomeVal = 1;
repeated SomeClass ListOfSomeClassTypes = 2;
}
Esto funciona bien para un List<SomeClass>
. ¿Por qué no puedo serializar usando protobuf-net a Dictionary<int, SomeClass>
? ¿Cómo se vería el mensaje para serializar un Dictionary<int, SomeClass>
?