Question

Je suis en train d'utiliser actuellement écrire une classe simple wrapper C # pour toutes les procédures stockées dans une base de données. Pour cela, je me sers CodeSmith et en particulier le SchemaExplorer.

Alors que itérer les paramètres d'une procédure stockée, j'ai remarqué la propriété ParameterSchema.AllowDBNull et je me demandais ce que cela est pour. Pour autant que je sache, il est impossible de déclarer un paramètre NOT NULL et donc NULL est toujours autorisé à passer à un paramètre.

Grâce à des tests, il semble que AllowDBNull est toujours vrai (ou du moins, je n'ai pas été en mesure d'écrire une procédure qui donne lieu à de faux). Donc, ce qui conduit à me demander quel est-il?

J'ai trouvé ce post des forums de CodeSmith en 2003: http://community.codesmithtools.com/Support_Forums/f/3/t /264.aspx

Ils disent qu'ils « fix » dans la prochaine version qui me fait penser il y a quelque chose que je suis absent ou ne pas comprendre sur ce bien.

Merci pour la recherche.

Était-ce utile?

La solution

Je travaille pour les outils CodeSmith et je l'ai mis à jour le après le forum de votre question. Je consultais avec Eric sur cette question et nous avons décidé qu'il était par la conception parce que vous pouvez toujours passer null dans un paramètre de procédure stockée. Dans le cadre de votre question, il est une propriété qui est définie dans une classe de base et vous permet de détecter d'autres objets de schéma (par exemple, ColumnSchema) si l'objet est annulable.

Le CommandWrapper modèles va générer une classe fortement typé à partir d'une procédure stockée existante ou la fonction . Avez-vous eu l'occasion de jeter un oeil à ce sujet?

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top