环境:WPF + MVVM + 存储库模式 + 经典 ADO.NET + SQL
背景:为简单起见,我们只考虑数据库中的 2 个表,User 和 UserType。
表
<i>User</i> : Id, Username, TypeId(fk ref UserType.Id)
<i>UserType</i> : Id (pk), TypeName
楷模
public class User {
public int Id {get;set;}
public string Username {get;set;}
public UserType Type {get;set;}
}
public class UserType {
public int Id {get;set;}
public string TypeName {get;set;}
}
问题:
使用经典 ado.net(不是 EF 或 LINQ)加载相关实体的最佳方法是什么?我是否必须在 SQL proc 中加入 User 和 UserType 表,然后在代码中填充每个相关实体?但这似乎很乏味,因为相关实体本身可能有几个相关实体,例如 A -> B -> C -> D 类等。
当我们使用 EF 时,在调试器中我们实际上可以查看当前一个到任何级别的所有相关实体。经典的 ado.net 有可能吗?