2010-08-06 6 views
0

Est-il possible de créer une procédure stockée pouvant appeler une fonction/générer du code C#? Je sais déjà comment appeler une procédure stockée à partir de C# (j'ai été surpris de voir à quel point c'est facile, je pensais que ce serait beaucoup plus complexe) mais ce que j'essaye de faire, c'est d'avoir une procédure stockée générer du code basé sur certaines informations à partir de SQL, mais mon problème pour ne pas pouvoir utiliser les informations de SQL est que je dois le faire passer par iTextSharp pour générer un rapport.Possible de créer/appeler C# à partir d'un SPROC?

Donc, si quelqu'un sait si c'est possible (Et un tutoriel/exemple, ce serait génial) pourraient-ils s'il vous plaît apporter un peu de lumière à ce sujet? Encore une fois, pour être clair, j'espère utiliser une procédure stockée pour appeler une fonction C# ou générer du code C# à la volée dans l'espoir de générer un fichier PDF avec iTextSharp.

Merci!

Remarque: Au moment où j'ajoutais des tags, j'ai vu des fonctions stockées, je n'ai pas beaucoup d'expérience mais est-ce qu'ils pourraient aussi bien fonctionner pour ce que je cherche à faire?

Répondre

2

Oui, il est possible de générer des procédures stockées qui appellent le code C# en utilisant le CLR. Je ne suis pas sûr qu'il est possible de générer du code C# à la volée, car il s'agit d'un code compilé.

Heres un refrence rapide pour vous: http://www.sqlteam.com/article/writing-clr-stored-procedures-in-charp-introduction-to-charp-part-1

+0

donc de lire le tutoriel (En bref, vous l'esprit) cela ressemble cela me permettra de faire une procédure stockée, de la déployer et de l'utiliser à partir de SQL Manager/Appeler l'instruction SQL à partir, disons, d'un site web, correct? Ne pas générer à la volée est bien principalement parce que je veux faire un sproc pour transmettre des informations, puis utiliser iTextSharp pour générer un rapport basé sur les informations transmises et d'autres choses, puis l'appeler à partir d'une page Web/SQL directeur. Merci encore, j'espère que cela fonctionne comme je pense ici – CSharpProgrammer

1

Vous pouvez être en mesure d'utiliser l'intégration CLR SQL Server, ont une lecture here pour plus d'informations

Questions connexes