J'utilise la dernière version de protobuf-net avec intégration VS2008. J'ai créé 2 messages (Message1 et Message2), 1 message dans 1 fichier proto. Lorsque j'essaie de référencer Message2 dans Message1 l'outil générateur de code me donne l'erreur "Message2" n'est pas défini et ne générera pas le fichier de code. Le package pour les deux messages est identique.
Cela ressemble à cela à cause de l'intégration de l'outil avec VS2008 il s'attend à ce que tous les messages du même fichier .proto soient compilés. Actuellement, je dois coller un message vide avec le même nom dans Message1.proto fichier, comme ceci:Erreur de l'outil personnalisé: Command.proto: 11: 18: "Message2" n'est pas défini
message Message1 {
optional Message2 message2 = 1;
}
message Message2 {
}
Et puis plus tard supprimer la déclaration de class Message2
de Message1.cs
. Y a-t-il des paramètres que je dois faire pour éviter cette erreur, ou est-ce que fournir une déclaration vide est le seul moyen? Ou s'il n'y a pas alors je suggère que vous (Marc Gravell) inclure un mot-clé comme « extern » pour indiquer au compilateur que la définition de ce type est disponible dans une autre classe
non, il me manquait quelque chose – ata