我正在使用多个ObjectDataSource来填充FormView中的ComboBox字段。 FormView有点通用,因为它的外观因其类别而异。
该类别在网页的网址中定义。我想创建一个类来过滤类别并公开几个属性,可以用来填充ComboBox字段。
问题是,默认的ObjectDataSource只有一个属性'SelectMethod'来检索数据。我希望创建这个类,它不是方法,而是包含数据的属性。
是不是在某种程度上,仍然可以将属性分配给'SelectMethod'(或类似的)?使用其他方法更好吗?
感谢。
答案 0 :(得分:8)
也许我错过了什么。但是,如果您要将属性指定为SelectMethod
,则必须将其设置为get_{Property Name}
。
答案 1 :(得分:0)
如果您尝试动态分配SelectMethod,则可以执行此操作:
//您说该类别来自Url,因此,在Page_Load方法
中protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
// Get your QueryString variable
if (Request["YourVariable"] != null)
{
string yourVariable = Request["YourVariable"].ToString();
if (yourVariable == "CategoryX") {
ObjectDataSource1.SelectMethod = "SelectMethodFromCategoryX";
// and if you need to set SelectParameters to your ObjectDataSource
ObjectDataSource1.SelectParameters["pYourParameterNameForCategoryX"].DefaultValue = this.txtTest.Text;
}
}
}
}