C# 使用对象数据源
我正在尝试使用ObjectBindingSource将数据绑定到gridview。数据以模型的形式作为控制器的子类出现在视图中C# 使用对象数据源,c#,asp.net,data-binding,gridview,objectdatasource,C#,Asp.net,Data Binding,Gridview,Objectdatasource,我正在尝试使用ObjectBindingSource将数据绑定到gridview。数据以模型的形式作为控制器的子类出现在视图中 var _controller = new DataController(param1, param2); 您将以这种方式访问它 foreach(var Variable in _controller.DataModel.Cars) <%: Car.Name %> ... foreach(控制器.DataModel.Cars中的var变量) ... 如
var _controller = new DataController(param1, param2);
您将以这种方式访问它
foreach(var Variable in _controller.DataModel.Cars)
<%: Car.Name %> ...
foreach(控制器.DataModel.Cars中的var变量)
...
如何使用此DataModel.Cars作为对象绑定源的源
我现在有
<asp:ObjectDataSource ID="ObjectDataSource1" runat="server"
TypeName="Choices.ChoiceService.ChoiceCollection"
DataObjectTypeName="Choices.ChoiceService.ChoiceObject"
InsertMethod="Add" SelectMethod="AsReadOnly"/>
在DataController上插入一个Select方法,如GetCars,方法如下:
public class DataController
{
public IEnumerable<Car> GetCars(int param1, int param2)
{
return this.DataModel.Cars;
}
}
注意:有更好的方法可以做到这一点,像这样使用会话真的很难看,这只是一个例子。您可能可以从以下选项中选择一个更好的选项
名单:
或者,您可以使用ObjectDataSource的OnDataBinding事件以编程方式直接在ObjectDataSource实例上设置参数。是的,您在这里有一些选项……请检查:
<asp:ObjectDataSource ID="ObjectDataSource1" runat="server"
TypeName="Choices.ChoiceService.DataController"
DataObjectTypeName="Choices.ChoiceService.Car"
SelectMethod="GetCars">
<SelectParameters>
<asp:SessionParameter Name="param1" SessionField="param1" />
<asp:SessionParameter Name="param2" SessionField="param2" />
</SelectParameters>
</asp:ObjectDataSource>
Session["param1"] = 12;
Session["param2"] = 13;