2013-07-15 81 views
1

在我的網站中,我有一堆複選框,但不幸的是,ASP將true評估爲1.我正在使用的數據庫要求true才能評估爲-1。將int綁定到複選框

如何將checkbox.checked轉換爲-1並將其綁定?所以在我的ASPX源代碼到目前爲止,我有:

asp:Checkbox ID="AFCanInstCheckbox" runat="server" OnCheckedChanged="CheckboxValue" 

我意識到我需要某種形式的代碼背後的計算結果checkbox.checked要麼0/-1,並綁定該int值。有人可以提出任何建議嗎?我有點卡住了。

回答

0

嗯,我想這取決於你如何通過你的數據超出你的表示層。你有數據訪問層(DAL)嗎?

如果你正在做行SQL代碼隱藏在單擊事件處理程序,那麼你只需要檢查設置的int變量並將其值設置,如下所示:

int isChecked = 0; // Assume false 
isChecked = AFCanInstCheckbox.Checked; 

// Now in your SQL logic just use the value of isChecked to pass to database 

如果您正在構建一個域對象(讀取:類)傳遞到數據訪問層,那麼你可以這樣做:

public class AFDomainObject 
{ 
    public bool IsSelected { get; set; } 
} 

var theAFDomainObject = new AFDomainObject(); 
theAFDomainObject.IsSelected = AFCanInstCheckbox.Checked; 

// Call DAL to do something 
DAL.DoSomething(theAFDomainObject);