2009-11-20 5 views
0

J'ai deux tableaux:Linq sql - Dynamic

Tableau 1: client

Domaines: Id_Client Char 5 Name_Client Char 50

Tableau 2: Pays

Domaines: Id_Country Char 4 Name_Country Char 80 Population Int 15

Avec Sql je peux faire ce 2 requêtes

Sélectionnez Id_Client, Name_Client de client

Sélectionnez Id_Country, Name_Country, Population de Pays

Je blême pour ce faire 2 requêtes en un seul utilisant Linq SQL. Je pense quelque chose comme ceci

chaîne Option = "";

chaîne SelectFields = ""; chaîne TableName = "";

si (Option == "Client") {

SelectFields = "Id_Client, Name_Client"; 
    TableName = "Client"; 

} else {

SelectFields = "Id_Country, Name_Country, Population"; 
    TableName = "Country"; 

}

Sélectionnez "SelectFields" de "TableName"

Je suis une femme Sual Fox Pro Developer et en utilisant Evaluate (macros) c'est très facile à faire. Est-il possible de faire quelque chose comme ça sur Linq To Sql ???

Désolé pour mon pauvre anglais

Répondre

0

Vous voulez regarder dans LINQ dynamique sql, cela vous permettra de passer dans l'expression comme une chaîne.

En fin de compte, vous finirez par quelque chose comme ce qui suit:

IQueryable<SomeItem> = results = context.SomeItem.Where("SomeItemID > 30 AND SomeItemID < 40");

Informations supplémentaires, Using Dynamic Linq

+0

je vis, mais est très pauvre, je ne peux pas faire quelque chose de vraiment dynamique. Vous ne pouvez pas utiliser 1 "requête" avec 2 tables ou plus. Une autre idée? S'il vous plaît Merci. Désolé pour mon pauvre anglais –