Bonjour à tous,
Débutant en C#, j'espère que je vais utiliser les bons termes pour vous faire comprendre mon problème.
Lors de l'initialisation d'un objet, je souhaite pouvoir initialiser ou non une propriété en fonction de la valeur NULL ou non d'un datareader.
Autrement dit, dans le code suivant, si le prénom récupéré en base est NULL, alors il ne faut pas initialiser la propriété FirstName :
J'ai essayé plusieurs syntaxe du type :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Student student = new Student { FirstName = drSQL["FirstName"].ToString(), LastName = drSQL["LastName"].ToString(), };
Ici, ça ne compile pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part !drSQL.IsDBNull(1) ? FirstName = drSQL["FirstName"].ToString() : null,
Dans ce cas, ça compile mais c'est complétement inutile... et puis la propriété est quand même initialisée
Code : Sélectionner tout - Visualiser dans une fenêtre à part FirstName = !drSQL.IsDBNull(1) ? drSQL["FirstName"].ToString() : null,
Je précise que j'ai plusieurs propriétés à traiter de cette façon donc les solutions du type ci dessous ne sont pas envisageable :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 ServerConnection serverConnection; if (!windowsAuthentication) { serverConection = new ServerConnection() { ServerInstance = server, LoginSecure = windowsAuthentication, Login = user, Password = password }; } else { serverConection = new ServerConnection() { ServerInstance = server, LoginSecure = windowsAuthentication, }; }
Par avance, merci pour votre aide.
Jonathan
Partager