J'ai un gridview et cela a une zone de texte dans footerrow.Je veux insérer une base de données.Mais j'obtiens une erreur.Comment convertir décimal? Ma valeur est décimale dans la base de données.Mon erreur:

Une exception de type «System.Data.SqlClient.SqlException» s'est produite dans System.Web.dll mais n'a pas été gérée dans le code utilisateur

Informations supplémentaires: erreur lors de la conversion du type de données nvarchar en numérique.

Code Cs:

SqlDataSource1.InsertParameters["MIKTAR"].DefaultValue = ((TextBox)grdSiparisHar.FooterRow.FindControl("txtMiktar")).Text;

Code aspx:

 <asp:GridView ID="grdSiparisHar" runat="server" AutoGenerateColumns="False" DataKeyNames="ID" DataSourceID="SqlDataSource1" AllowPaging="True">
                    <Columns>
   <asp:TemplateField HeaderText="MIKTAR" SortExpression="MIKTAR">
                            <EditItemTemplate>
                                <asp:TextBox ID="TextBox3" runat="server" Text='<%# Bind("MIKTAR") %>'></asp:TextBox>
                            </EditItemTemplate>
                            <ItemTemplate>
                                <asp:Label ID="Label4" runat="server" Text='<%# Bind("MIKTAR") %>'></asp:Label>
                            </ItemTemplate>
                              <FooterTemplate>
                                <asp:TextBox ID="txtMiktar" runat="server"></asp:TextBox>
                            </FooterTemplate>
                    </asp:TemplateField>
0
Emre Aslan 17 janv. 2017 à 09:24

2 réponses

Meilleure réponse

J'ai trouvé la réponse, j'ai ajouté type = decimal dans sqldatasource

<InsertParameters>
<asp:Parameter Name="MIKTAR" Type="Decimal"></asp:Parameter>
</InsertParameters>
0
Emre Aslan 17 janv. 2017 à 06:54
SqlDataSource1.InsertParameters["MIKTAR"].DefaultValue = Convert.ToDecimal(((TextBox)grdSiparisHar.FooterRow.FindControl("txtMiktar")).Text);
0
erdi yılmaz 17 janv. 2017 à 06:37