データベース内のすべてのアルバムレコードを取得するためのデリゲートを作成しています。私は別のプロジェクトでこの同じ方法を使用しましたが、何らかの理由で今回はエラーが発生しています。コンパイルされたクエリでObjectContextへの暗黙的な参照変換がありません
ステップがありませんでしたか?なぜこのエラーが出現するのか分かりません。タイプ 'CodyData.Diagram.CodySolutionEntities' 1
コード
public static readonly Func<CodySolutionEntities, IQueryable<Album>> SelectAlbums =
CompiledQuery.Compile<CodySolutionEntities, IQueryable<Album>>(
query => from q in query.Albums.Include("Photo")
select q);
エラー
エラーは、エラーメッセージがCodySolutionEntities
がないことを示すタイプparameter 'TArg0' in the generic type or method 'System.Data.Objects.CompiledQuery.Compile<TArg0,TResult>(System.Linq.Expressions.Expression<System.Func<TArg0,TResult>>)'. There is no implicit reference conversion from 'CodyData.Diagram.CodySolutionEntities' to 'System.Data.Objects.ObjectContext'. C:\Users\Cody\Documents\CMBS\CodySolution\CodyData\Delegates\PhotoDelegates.cs 13 13 CodyData
'DbContext'を使って私がやろうとしていることと同等の方法は何でしょうか? – Cody
それは問題です。**あなたは 'DbContext'を' CompiledQuery'で使うことはできません。参照:http://stackoverflow.com/a/6731102/1289454。コンパイルされていないクエリを使用するだけでいいですか? '(var context = new CodySolutionEntities()){var albums = context.Albums.Include(a => a.Photos);を使用します。 // ...} ' – gowansg