Laden...

Dynamisches Linq to sql

Erstellt von Curse4Life vor 13 Jahren Letzter Beitrag vor 13 Jahren 1.091 Views
C
Curse4Life Themenstarter:in
452 Beiträge seit 2005
vor 13 Jahren
Dynamisches Linq to sql

verwendetes Datenbanksystem: SQL Server 2005

Guten Morgen,

ich stehe vor einem Problem das ich mit meinen Fähigkeiten nicht gelöst bekomme und ich hoffe ihr könnt mir helfen.
Ich wollte gerne ein kleines Framework entwickeln in dem ein Part ein kleines usermanagment ist das einem so die sich wiederholenden Teile einer Webseite (Reg, Login usw.) abnimmt.
Nun wollte ich das ganze aber schon flexibel gestalten.

Das heißt für mich, der Entwickler der mit dem Framework arbeitet legt eine Config an, in der er angibt, wie die Usertabelle heißt, wie die UniqueId Spalte heißt, wie die UserId Spalte (Username, Email usw.) heißt und die Passwort Spalte.

Nun beherrsche ich zwar SQL und Linq, aber nur in der mir vertrauten weise sprich:


DBDataContext db = new DBDataContext();

db.Users.SingleOrDefault(u => u.Username == "Test" && u.Password == "Test");

Das Problem ist jetzt aber ja das diese ganzen Infos (Tabellenname, UserSpalte, Passwort) nur als Strings aus einer Config vorliegen!
Kann man Linq so dynamisch nutzen das ich diese Abfrage mit mir zur Entwicklungszeit unbekannten Werten ausführen kann?

Liebe Grüße

R
68 Beiträge seit 2010
vor 13 Jahren

Hier hat einer eine Extension geschrieben, die zur Laufzeit queries
anhand einer Parameter-Repository erstellt. Scheint genau das zu sein,
was Du suchst:

http://tomasp.net/articles/dynamic-linq-queries.aspx

Hier ist auch noch eine Lib, die das leistet:
http://weblogs.asp.net/scottgu/archive/2008/01/07/dynamic-linq-part-1-using-the-linq-dynamic-query-library.aspx

Bitte beachte auch die Hinweise zum Thema Security/SQL-Injection, dass ist
bei solchen dynamischen Geschichten nicht ohne.

Robin