私は次のコードを機能させようとしています、これはMSSQLではうまく機能していましたが、mySqlを使用するように変更したので機能しません
records.Content = db.areas
.Where(x => x.Name.Contains(filter)))
.OrderBy("dated desc")
.ToList();
「リクエストされたタイプを1つ以上ロードできません。詳細については、LoaderExceptionsプロパティを取得してください。」というエラーが表示されます。
string colName = "datedD" ;
colName変数をdepnedingする方法
`
これを試して
string filterString = "dated";
bool isAscSorting = false;
Func<dynamic, dynamic> orderingFunction = i =>
filterString == "dated" ? i.dated :
filterString == "something" ? i.columnx : "";
records.Content = (isAscSorting) ?
db.areas
.Where(x => x.Name.Contains(filter)))
.OrderBy(orderingFunction)
.ToList()
:
db.areas
.Where(x => x.Name.Contains(filter)))
.OrderByDescending(orderingFunction)
.ToList();
.Net Coreでは、 EF.Property
メソッドを使用して、プロパティの名前を文字列として指定できます。
string sortColumn = "Price";
//IQueryable<Product> q = from p in myDbContext.Products select p;
q = q.OrderBy(p => EF.Property<object>(p, sortColumn));