私はリフレクションによってモデルのプロパティーを.Include()
にしようとしています。これにより、どのモデルタイプのすべてのプロパティも自動的に含めることができます。リフレクションでプロパティを組み込む
public static IQueryable<TSource> IncludeAll
<TSource>(this IQueryable<TSource> source)
where TSource : class
{
return typeof(TSource).GetProperties()
.Where(property => property.GetGetMethod().IsVirtual)
.Aggregate(
source,
(current, property) => current.Include(
item => property.GetValue(item, null)));
}
私が手にエラーが
InvalidOperationExceptionがある: プロパティ式 'アイテム=> __property_0.GetValue(項目、ヌル)' は有効ではありません。 この式はプロパティのアクセスを表す必要があります: 't => t.MyProperty'。
実際にラムダ内のアクセサによってそのプロパティを参照する方法はありますか?