J'ai eu cette erreur en essayant de trier les colonnes qui ne sont pas dans la table de commande, si j'utilise OrderBy("Customer.CompanyName" + " " + sortDir)
l'erreur aura disparu mais toutes les colonnes deviendront incapables de trier. La méthode OrderBy
utilisée ci-dessous provient de here.Comment réparer l'erreur 'Aucune propriété ou champ existe dans le type'?
Quelle est la cause du problème?
public ActionResult WebGrid(int page = 1, int rowsPerPage = 10, string sortCol = "OrderID", string sortDir = "ASC")
{
List<Order> res;
using (var nwd = new NorthwindEntities())
{
var _res = nwd.Orders
.OrderBy(sortCol + " " + sortDir)
.Select(o => new Order
{
OrderID = o.OrderID,
OrderDate = o.OrderDate,
CompanyName = o.Customer.CompanyName,
FirstName = o.Employee.FirstName,
//......
//......
//......
});
Merci pour l'aide, mais je ne peux pas utiliser 'ThenBy' sous linq dynamique. – Phantom
Jetez un oeil à ceci: http://stackoverflow.com/a/34908081/3185569 – user3185569
Merci pour votre aide! J'ai trouvé que je peux utiliser else if statement pour y parvenir. – Phantom