Brug værdi fra TextBox control i UpdateParameters
Hej alle,Jeg har et problem, som jeg aldrig troede kunne være et problem. Jeg vil gerne have et detailsview, hvori man kan angive et ID (integer), vælge en billedefil til upload til dette ID i en MySQL database og trykke "update". Men jeg kan ikke få det til at virke efter mange timers frustration.
Mit DetailsView ser således ud:
<asp:DetailsView ID="DetailsView2" runat="server" DataSourceID="UpdatePicture" Height="50px" Width="125px" DefaultMode="Edit" AutoGenerateRows="False" DataKeyNames="questionID">
<Fields>
<asp:TemplateField HeaderText="Spørgsmåls ID">
<EditItemTemplate>
<asp:TextBox ID="TextBox1" text='<%# Bind("QuestionID") %>' runat="server" />
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Picture">
<EditItemTemplate>
<asp:FileUpload ID="FileUpload2" filebytes='<%# Bind("Picture") %>' runat="server" />
</EditItemTemplate>
</asp:TemplateField>
<asp:CommandField ShowInsertButton="True" ShowEditButton="True" />
</Fields>
</asp:DetailsView>
Min DataSource ser således ud:
<asp:SqlDataSource ID="UpdatePicture" runat="server"
ConnectionString="<%$ ... %>"
ProviderName="<%$ ... %>"
SelectCommand="SELECT questionID, picture FROM questions"
UpdateCommand="UPDATE questions SET picture = ?picture WHERE questionID = ?questionID ">
<UpdateParameters>
<asp:Parameter Name="picture" />
<asp:Parameter Name="questionID" Type="Int32" />
</UpdateParameters>
</asp:SqlDataSource>
Hvad skal jeg gøre? Det der sker er, at den automatisk skriver det laveste ID i databasen ind i tekstfeltet, men selvom man ændrer værdien inden der trykkes "update" uploader den billedet til den værdi den oprindeligt sætter ind ved page load.
Er der nogen der kan hjælpe?