2010-06-26 58 views
0

該方法具有返回類型的集合< businessEntity>。我從aspx頁面調用該方法以填充下拉列表 - >ddlDropDown。我結合自己DataTextFieldddlDropDownBusinessEntity.NameDataValueFieldBusinessEntity.Id,業務實體包含另一個id,這將是BusinessEntity.ProductId。我需要使用後面代碼中下拉列表中選定值的ProductId。你能幫我建議我怎麼做?如何檢索業務實體中的其他值

一種可能的方式可能是背後呼籲代碼在Page_Load方法和保存集合在一個隱藏的變量,並在需要時通過在隱藏變量做一個循環並檢索選定值產品編號

您的想法請。

回答

0

您當然可以使用隱藏字段來完成此操作。

下面是另一個想法:將DataValueField綁定到一個特殊的派生字符串,其中包含BusinessEntity.Id和BusinessEntity.ProductId。

換句話說,將BusinessEntity.Id和BusinessEntity.ProductId連接成一個單獨的字符串,例如用管道(「|」)符號分隔。

E.g綁定:

ddlFoo.DataValueField = string.Format("{0}|{1}", "Id", "ProductId"); 

然後檢索選定的項目:

var id = ddlFoo.SelectedValue.Split("|")[0]; 
var productId = ddlFoo.SelectedValue.Split("|")[1]; 

節省您的循環/匹配。再一次,它不是理想的,但是又沒有將多個值類型綁定到下拉列表。

相關問題