Organizing Eager Queries in an ObjectContext

Posted by Nix on Stack Overflow See other posts from Stack Overflow or by Nix
Published on 2010-05-24T13:07:34Z Indexed on 2010/05/24 13:41 UTC
Read the original article Hit count: 288

I am messing around with Entity Framework 3.5 SP1 and I am trying to find a cleaner way to do the below.

I have an EF model and I am adding some Eager Loaded entities and i want them all to reside in the "Eager" property in the context. We originally were just changing the entity set name, but it seems a lot cleaner to just use a property, and keep the entity set name in tact.

Example:

Context
 - EntityType
 - AnotherType
 - Eager (all of these would have .Includes to pull in all assoc. tables)
    - EntityType
    - AnotherType

Currently I am using composition but I feel like there is an easier way to do what I want.

namespace Entities{   
 public partial class TestObjectContext
{

   EagerExtensions Eager { get;set;}
   public TestObjectContext(){
     Eager = new EagerExtensions (this);
   }

}

 public partial class EagerExtensions 
 {
   TestObjectContext context;
   public EagerExtensions(TestObjectContext _context){
       context = _context;
   }
      public IQueryable<TestEntity> TestEntity
        {
            get
            {
                return context.TestEntity
                .Include("TestEntityType")
                .Include("Test.Attached.AttachedType")
                .AsQueryable();
            }
        }
 }
}



public class Tester{
  public void ShowHowIWantIt(){
     TestObjectContext context=  new TestObjectContext();
     var query = from a in context.Eager.TestEntity select a;

  }

}

© Stack Overflow or respective owner

Related posts about c#

Related posts about design