Cette question est apparue alors que j'essayais de comprendre un problème plus vaste que, par souci de simplicité, j'omets.
Je dois représenter une certaine structure de données en C#. C'est un protocole qui sera utilisé pour communiquer avec un système externe. En tant que tel, il comporte une séquence de chaînes de caractères avec des longueurs prédéfinies et des nombres entiers (ou d'autres données plus complexes). Supposons :
SYSTEM : four chars
APPLICATION : eight chars
ID : four-byte integer
Maintenant, ma façon préférée de représenter ceci serait d'utiliser des chaînes de caractères, donc
class Message
{
string System {get; set; }; // four characters only!
string Application {get; set; }; // eight chars
int Id {get; set; };
}
Le problème est que je dois m'assurer que la chaîne ne dépasse pas la longueur prédéfinie. De plus, cet en-tête aura en fait des dizaines de champs, qui changeront de temps en temps (nous sommes encore en train de décider de la mise en page du message).
Quelle est la meilleure façon de décrire une telle structure ? Je pensais, par exemple, utiliser un XML avec la description des données et utiliser la réflexion afin de créer une classe qui adhère à l'implémentation (puisque j'ai besoin d'y accéder de manière programmatique).
Et, comme je l'ai dit, il y a plus de problèmes. J'ai d'autres types de données qui limitent le nombre de caractères/chiffres...