在linq中创建实体的.Include()列表

joh*_*oop 0 linq-to-entities entity-framework

我有一长串的包括:

.Include("x")
.Include("y")
.Include("z")
.Include("z.w")
.Include("z.v")
Run Code Online (Sandbox Code Playgroud)

我想在三个不同的查询中使用此列表.如何将这些列入列表并在我的所有查询中使用该列表,以免重复自己.

Cra*_*ntz 5

尝试:

public static class MyQueryHelpers
{
    public static ObjectQuery<Foo> MyIncludes(this ObjectQuery<Foo> query)
    {
        return query.Include("x")
                    .Include("y")
                    .Include("z")
                    .Include("z.w")
                    .Include("z.v");
    }
}
Run Code Online (Sandbox Code Playgroud)

现在使用它:

var q = from f in Context.Foos.MyIncludes()
        select f;
Run Code Online (Sandbox Code Playgroud)