相关疑难解决方法(0)

返回匿名类型的简单方法(使用LINQ实现MVC)

我想在使用LINQ(特别是LINQ到实体)时实现MVC.我这样做的方法是让Controller使用LINQ生成(或调用生成的)结果集,然后将其返回到View以显示数据.问题是,如果我这样做:

return (from o in myTable select o);
Run Code Online (Sandbox Code Playgroud)

所有列都从数据库中读取,即使是我不想要的列(可能是几十列).而且 - 更重要的是 - 我做不到这样的事情:

return (from o in myTable select new { o.column });
Run Code Online (Sandbox Code Playgroud)

因为没有办法让匿名类型安全!我知道确实没有好的,干净的方式在3.5中这样做(不干净......),但4.0怎么样?有什么计划,甚至提议? 如果没有像duck-typing-for-LINQ那样的东西,或类型安全的匿名返回值(在我看来,编译器当然应该能够做到这一点),似乎几乎不可能将Controller与View完全分开.

c# linq asp.net-mvc linq-to-entities linq-to-sql

5
推荐指数
1
解决办法
3634
查看次数

为MVC视图订购实体框架项和子项

如何从DbSet中对查询进行排序,并包括应该排序的子项.

例:

我有一个调度订单的模型.

public class Order
{
  public virtual int Id { get; set; }
  public virtual int? SchedulingOrder { get; set; }
  public virtual int? WeekId { get; set; }
  public virtual Week Week { get; set; }
}
public class Week
{
  public virtual int Id { get; set; }
  public virtual DateTime StartDate { get; set; }
  public virtual ICollection<Order> Orders { get; set; }
}
...
public DbSet<Week> Weeks { get; set; }
public DbSet<Order> Orders …
Run Code Online (Sandbox Code Playgroud)

linq asp.net asp.net-mvc entity-framework sql-order-by

5
推荐指数
1
解决办法
7606
查看次数