Phi*_*hil 3 c# sql sql-server asp.net-mvc
我有两个表要从中获取数据.
让我们称他们为"父母"和"孩子"."父"表在"子"表中有许多记录.(一对多)
我的问题是我想找到一种有效的方法来显示两个表包含在我的ASP.NET MVC应用程序中的数据.我的方法是从"Parent"中选择所有记录,然后遍历每个记录,从"Children"中选择数据.
所以我需要帮助设计SQL Server 05的查询,它可以更有效地获取C#的数据,我计划创建类型类,"Parent"类将有一个"List",在我的View中我可以循环输出价值.
public class Parent_Type
{
public string Name { get; set; }
public List<Children_Type> Children { get; set; }
}
public class Children_Type
{
public string Name { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
数据需要显示如下:("父"记录的名称,然后是"子"记录列表")
"家长123"
"父母124"
我会立即提取所有数据,然后以编程方式运行它.
SELECT Parent.Id, Parent.Name FROM Parent
LEFT OUTER JOIN
SELECT Child.Id AS ChildId, Child.Name AS ChildName FROM Child
ON
Child.ParentId = Parent.Id
ORDER BY Parent.Name
Run Code Online (Sandbox Code Playgroud)
当您获得数据时,将重复父项,因此您需要对其进行过滤.您可以通过提供父比较或通过for循环通过LINQ执行此操作.Itereate通过列表折叠在唯一的父级上,因为每条记录实际上代表一个孩子或无子女的父母.
有关LINQ"distinct"的信息,请点击此处.
| 归档时间: |
|
| 查看次数: |
5130 次 |
| 最近记录: |