2009-05-29 6 views
0

J'ai une application ASP.NET 3.5 que je veux permettre à l'utilisateur de sélectionner une table et d'autoriser les opérations CRUD sur cette table. L'utilisateur sera limité à un certain nombre de tables à éditer mais les tables et même la base de données ne seront connues qu'après le déploiement; le web.config va configurer la connexion et les tables.SQL dynamique pour mettre à jour une table à partir d'ASP .NET

J'ai donc besoin de construire un framework qui permettra de mettre à jour une table générique dans une base de données SQL. La plupart des ORM que j'ai vus nécessitent que le schéma soit connu au moment de la compilation, donc je ne peux pas les utiliser. La meilleure réponse semble être de construire dynamiquement les chaînes de requête SQL et d'utiliser des expressions reg pour garantir une entrée valide et protéger contre les injections SQL. Y a-t-il un meilleur moyen?

Répondre

0

Oui. Que diriez-vous de l'ensemble de données et des objets datatable? vous pouvez les remplir via une instruction sql dynamique, les lier directement à un bon contrôle de grille d'éditeur, et la vérification du type de données du schéma et de la colonne doit être un snap. Qu'avons-nous fait avant ORM et Linq?!?!

0

La bibliothèque Dynamic Linq est incroyable. Vous pouvez tout spécifier en tant que chaîne, sauf peut-être les noms de table.

alt text http://www.scottgu.com/blogposts/dynquery/step2.png http://weblogs.asp.net/scottgu/archive/2008/01/07/dynamic-linq-part-1-using-the-linq-dynamic-query-library.aspx

Cependant, regardez ici des idées sur la façon de sélectionner les tables lors de l'exécution par le mappage dynamique DataContext:

http://blogs.microsoft.co.il/blogs/bursteg/archive/2007/09/27/25294.aspx

Questions connexes