该方法具有返回类型的集合< businessEntity >。我从aspx页面调用方法以填充下拉菜单 - >的 ddlDropDown 即可。我将 ddlDropDown 的 DataTextField 与 BusinessEntity.Name 绑定在一起, DataValueField 与 BusinessEntity绑定。 Id ,商家实体包含另一个ID BusinessEntity.ProductId 。我需要使用后面代码中下拉列表中所选值的 ProductId 。你能帮忙建议我怎么做吗?
一种可能的方法是在后面的代码中调用page_Load中的方法并将集合保存在隐藏变量中,并在需要时在隐藏变量中执行循环并检索所选值产品ID 。
请你的想法。
答案 0 :(得分:0)
你当然可以使用隐藏字段来完成此任务。
这是另一个想法:将DataValueField绑定到一个特殊的派生字符串,其中包含BusinessEntity.Id和BusinessEntity.ProductId。
换句话说,将BusinessEntity.Id和BusinessEntity.ProductId连接成一个字符串,例如由管道(“|”)符号分隔。
要结束:
ddlFoo.DataValueField = string.Format("{0}|{1}", "Id", "ProductId");
然后检索所选项目:
var id = ddlFoo.SelectedValue.Split("|")[0];
var productId = ddlFoo.SelectedValue.Split("|")[1];
保存循环/匹配。同样,它不理想,但后来又没有将多个值类型绑定到下拉列表。