Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

264
Visualizações
Migración de protobuf-net versión 2.X a 3.X

Estoy haciendo una actualización de la referencia de mi librería protobuf-net, específicamente de la 2.4.4 a la 3.0.101 . Anteriormente, usábamos null en las listas porque contenían información significativa para la empresa (p. ej., new[] { "one", "two", null, null, "five" } ). Sin embargo, no son compatibles con 3.x hasta donde yo entiendo ( https://protobuf-net.github.io/protobuf-net/releasenotes# ).

¿Hay alguna estrategia de migración sugerida para colecciones con valores nulos?

Puedo mitigar el cambio en el futuro con campos adicionales (por ejemplo, transponer la colección a un diccionario y volver a serializar/deserializar), sin embargo, la compatibilidad con versiones anteriores parece rota para los datos serializados con bibliotecas 2.x. ¿Existen guías de migración?

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Dado que 3.x aún no admite la retención nula, sus opciones son algo limitadas:

  1. Envíe un PR para agregar la función que falta. Un vistazo rápido al código fuente de protobuf me hace pensar que sería bastante trivial de implementar. En la línea 161 del archivo fuente vinculado, parece haber un tiro para nulos, que es donde comenzaría. Sin embargo, podría estar muy equivocado acerca de lo complicado que sería esto.
  2. Vea si puede usar ambas bibliotecas al mismo tiempo. Necesitaría saber (o detectar) si los datos para serializar están en formato v2 o v3 (no lo he comprobado, pero me sorprendería si no hubiera una forma de detectar esto mirando los primeros bytes). Es posible que deba compilar una versión personalizada para darle un espacio de nombres diferente, para que los dos coexistan.
  3. Migrar datos a v3. Puede hacer esto como una operación única (menores cantidades de datos que usted controla) o bajo demanda (grandes cantidades de datos o datos recibidos externamente). Deberá rediseñar los tipos utilizados en las listas con valores nulos, de modo que ya no tenga valores nulos (por ejemplo, al tener un valor personalizado que represente lógicamente el valor nulo).
  4. Quédate con la v2. Es estable y funciona excepcionalmente bien, por lo que, a menos que tenga una necesidad específica de actualizar, puede que no valga la pena el esfuerzo.
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda