作为MVC应用程序的一部分,我有两个类映射到我的数据库中的相应表
public class Child {
public int id;
public int parentId; //foreign key to parent class
public int age;
}
public class Parent {
public int id;
public virtual IList<Child> children;
}
在我的控制器中,我只需要按id选择一个父项,包括其子项列表。
对于被选中的父级,我希望父级的子级列表按年龄顺序排列。 我已经能够使用以下代码执行此操作:
Parent parent = context.parents.FirstOrDefault(p => p.id == idToCheck);
parent.children = parent.children.OrderBy(c => c.age).Cast<Child>().ToList();
即使这样有效,但我仍然觉得这是一种做我所追求的事情的黑客方式。
根据我的阅读,当我最初选择父母时,不可能订购儿童。这是对的吗?
我在上面的代码中有什么可以/应该做得更好的吗?