Je suis en train de développer un User Control à qui je donne des valeurs, via des propriétés publiques.
Je voudrais pouvoir faire planter la compilation d'un projet utilisant mon User Control si certaines valeurs ne sont pas renseignées (via les propriétés du User Control).
Est-ce possible ? Si oui comment faut-il faire ?
J'ai regardé du côté du préprocesseur C# mais je n'ai pas réussi à tester mes variables.
Merci d'avance pour vos réponses
-=[JuS]=-
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live
Effectivement la seule manière que je connaisse de lever une erreur de compilation est la directive #error Par contre tu ne peux naturellement pas effectuer de test sur les valeurs de tes propriétés.
Mais normalement une des qualités que doit avoir impérativement le développeur c'est la capacité de lire correctement une doc.
Donc écrit bien ta doc et ton contrôle devrait être bien utilisé ;-)
Et les oublis éventuels se verront très rapidement au moment des tests.
Le fait de faire un throw n'impliquera pas une erreur de compilation !
D'ailleurs, je ne vois pas comment il serait possible de générer des erreurs à la compilation si des valeurs ne sont pas dans des plages attendues, ça n'a d'ailleurs aucun sens (c'est n'est pas le boulot du compilo que de regarder si une valeur est valide, il s'assure par contre que le type est correct).
Et puis rien ne t'empêche de forcer la valeur au minimum ou au maximum si elle est en dehors de la plage que tu as fixé ... moi en général c'est ce que je fais si c'est nécessaire.