我正在尝试使用 ASP.NET 4.5 的模型绑定功能将 ListView 中显示的产品列表中的单个产品的详细信息加载到 FormView 控件中。
这一切都托管在一个 ASPX 页面中,该页面决定使用 Multiview 控件显示哪个页面。在一个视图中,我有显示所有产品的 ListView。在另一个视图中,我有 FormView 控件来显示/编辑单个产品的详细信息。当我单击 ListView 中的单个产品记录时,我想显示包含 FormView 的视图,并将该产品加载到 FormView 中以进行编辑或查看。
按照 WebForms 中模型绑定的方向,我已经定义了 FormView 的“SelectMethod”属性,该方法将 ProductId 作为其参数。此方法返回一个对应的 Product 对象。据我了解,在页面生命周期的某个地方调用此方法并自动加载 FormView。
现在,当我单击 ListView 中的记录以查看其详细信息时,它会触发 ItemCommand 事件处理程序。事件处理程序使用所选记录中的产品 Id 并检索与此 Id 对应的产品。
问题在于我需要将该产品绑定到 FormView。如何手动将产品分配为 FormView 绑定的模型?当我尝试手动设置 FormView 的 DataSource 时,出现错误:
"使用模型绑定时,不能在 'ProductForm' 上定义 DataSource 或 DataSourceID。 "
有没有其他人有这个类似的问题,并想出如何处理它?
谢谢,
G