我的 dbml 包含一个主表“M”和一个详细表“D1”。
我的 aspx 页面由一个用于显示 M 数据的文本框和一个用于填充 D1 数据的网格组成。我希望在单击按钮时填充网格以节省加载时间(D1 包含很多行)。
问题1:以下代码是正确的方法吗?
protected void Page_Load(object sender, EventArgs e)
{
MyDataContext context = new MyDataContext();
M m = context.Ms.Single(n => n.id == id); // id is somehow provided
TextBox1.Text = m.field1;
}
protected void Button1_Click(object sender, EventArgs e)
{
MyDataContext context = new MyDataContext();
M m = context.Ms.Single(n => n.id == id); // id is somehow provided
Grid1.DataSource = m.D1s;
Grid1.DataBind();
}
问题 2:由于我可以在 Page_Load 中访问 m.D1,这是否意味着已经从数据库中获取了详细数据,或者是否应用了延迟执行?