2012-03-13 45 views
1

我有這樣的代碼,我發現這個網站上的DeleteCommand在數據列表,無法轉換INT爲目標字符串類型

http://msdn.microsoft.com/en-us/library/efx1fwb6.aspx

<asp:DataList runat="server" ID="Datalist1" DataSourceID="SqlDataSource1" DataKeyField="BrandID" OnDeleteCommand="DataList1_DeleteCommand"> 
    <ItemTemplate> 
     <asp:Label runat="server" ID="BrandNameLabel" Text='<%#Eval("BrandName") %>' /> 
     <br/> 
     <asp:Button runat="server" ID="Delete" Text="Slet" CommandName="Delete" /> 
    </ItemTemplate> 
</asp:DataList> 

protected void DataList1_DeleteCommand(object source, DataListCommandEventArgs e) 
{ 
    int id = (int) Datalist1.DataKeys[e.Item.ItemIndex]; 
    SqlDataSource1.DeleteParameters["BrandID"].DefaultValue = id; 
    SqlDataSource1.Delete(); 
} 

我想我已喜歡的網站,但我得到和錯誤稱爲「無法將源類型'int'轉換爲目標類型'字符串'」

我的BrandID是和int。 你能幫我,並顯示我如何轉換它。

回答

1

DefaultValue是一個字符串。你可以簡單地做到這一點:

SqlDataSource1.DeleteParameters["BrandID"].DefaultValue = 
    Datalist1.DataKeys[e.Item.ItemIndex].ToString(); 
+0

謝謝你做的工作! :d – user1267197 2012-03-13 18:39:56