2009-10-25 6 views
0

Voici une déclaration subsonique qui ne trouvaille en utilisant la colonne fortement typé ProductId:Comment utiliser une chaîne de caractères pour spécifier un nom de colonne dans SubSonic 3.0

var products = Product.Find(x => x.ProductID <= 10); 

Est-il possible de ne pas utiliser un fort nom de colonne typé et spécifier à la place le nom de la colonne avec une chaîne littérale comme suit:

var columnName = "SampleColumn"; 
var products = Product.Find(x => x[columnName] <= 10); 

Ou quelque chose de similaire?

Répondre

0

Vous ne pouvez pas le faire avec LINQ mais vous pouvez le faire en utilisant une requête couramment comme suit:

string columnName = "SampleColumn"; 

List<Product> products = new Select() 
    .From<Product>() 
    .Where(columnName).IsLessThanOrEqualTo(10) 
    .ExecuteTypedList<Product>(); 
Questions connexes