LINQ“包含”缺失。看完这篇文章后: http://romiller.com/2010/07/14/ef-ctp4-tips-tricks-include-with-lambda/
我想使用include。 这是我的班级:
public class Service
{
#region Properties
/// <summary>
/// Gets or sets CatalogRootNodeId.
/// </summary>
public virtual int CatalogRootNodeId { get; set; }
/// <summary>
/// Gets or sets ServiceDomain.
/// </summary>
public virtual ICollection<ServiceDomain> ServiceDomain { get; set; }
#endregion
}
我想“包含”所有ServiceDomains,但“Include”选项不存在 ?? 我正在使用MVC3和EF。 感谢
答案 0 :(得分:2)
您使用的是CTP5还是CTP4? 如果这样做,您可以使用System.Data.Entity.DbExtensions.Include中的扩展方法。
public static IQueryable<T> Include<T>(this IQueryable<T> source, Expression<Func<T, object>> path)
var db = new MyDbContext();
var services = db.Services.Where(s => s.CatalogRootNodeId == 1).Include(s => s.ServiceDomain);
答案 1 :(得分:1)
您需要致电Include()
ObjectSet<Service>
上的DataContext
。