代码之家  ›  专栏  ›  技术社区  ›  AbdulAziz Nurov

ASP。NET无法在列名中插入值NULL

  •  0
  • AbdulAziz Nurov  · 技术社区  · 7 年前

    Users 表,列: id name , surname .我试图制作简单的插入功能,但当我提交表单时

    我正在关注 this 辅导的

    <%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" 
    AutoEventWireup="true" CodeBehind="test.aspx.cs" 
    Inherits="Spravochnik.Users.test" %>
    
    <asp:Content ContentPlaceHolderID="BodyPlaceHolder" runat="server">
    
    <script runat="server">
        private void store(object source, EventArgs e) {
            SqlDataSource1.Insert();
        }
    </script>
    
    <asp:SqlDataSource 
        ID="SqlDataSource1" 
        runat="server" 
        DataSourceMode="DataReader" 
        ConnectionString="Data Source=DESKTOP-FJR7LSU;Initial Catalog=spravochnik;Integrated Security=True"
        SelectCommand="SELECT * FROM Users"
        InsertCommand="INSERT INTO Users (name, surname) VALUES (@Name, @Surname)">
            <InsertParameters>
                <asp:FormParameter Name="Name" FormField="NameBox" />
                <asp:FormParameter Name="Surname" FormField="SurnameBox" />
            </InsertParameters>
    </asp:SqlDataSource>
    
    <asp:TextBox ID="NameBox" runat="server" />
    <asp:RequiredFieldValidator
        ID="RequiredFieldValidator1"
        runat="server"
        ControlToValidate="NameBox"
        Display="Static"
        ErrorMessage="Please Enter User's Name." /><br />
    
    <asp:TextBox ID="SurnameBox" runat="server" />
    <asp:RequiredFieldValidator
        ID="RequiredFieldValidator2"
        runat="server"
        ControlToValidate="SurnameBox"
        Display="Static"
        ErrorMessage="Please Enter User's Surname." /><br />
    
    <asp:Button ID="Button" runat="server" Text="Add" OnClick="store" />
    
    
    </asp:Content>
    

    <%@ Master Language="C#" AutoEventWireup="true" 
    CodeBehind="Site.master.cs" Inherits="Spravochnik.Site" %>
    
    <!DOCTYPE html>
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
    <title></title>
    <link href="~/Public/css/bootstrap.min.css" rel="stylesheet" type="text/css" />
    <link href="~/Public/css/stylesheet.css" rel="stylesheet" type="text/css" />
    <asp:ContentPlaceHolder ID="head" runat="server" />
    </head>
    <body>
    <form runat="server">
        <div class="container">
            <div style="padding-top:50px">
                <asp:ScriptManager runat="server">
                    <Scripts>
                        <asp:ScriptReference Path="~/Public/js/jquery.js" />
                        <asp:ScriptReference Path="~/Public/js/bootstrap.min.js" />
                    </Scripts>
                </asp:ScriptManager>
                <asp:ContentPlaceHolder ID="BodyPlaceHolder" runat="server" />
            </div>
        </div>
    </form>
    </body>
    </html>
    

    请帮忙, 谢谢 提前

    3 回复  |  直到 7 年前
        1
  •  0
  •   Santhosh Raja    7 年前

    Hiii,

    1.您可以更改数据库的架构,可以设置标识值并将标识种子增加到+1。 enter image description here

    3.您可以删除表中的select allow NULL。

        2
  •  0
  •   mjwills Myles McDonnell    7 年前

    更改:

    <asp:TextBox ID="NameBox" runat="server" />
    

    <form id="form1" runat="server">
    <asp:TextBox ID="NameBox" runat="server" />
    

    和更改:

    <asp:Button ID="Button" runat="server" Text="Add" OnClick="store" />
    

    收件人:

    <asp:Button ID="Button" runat="server" Text="Add" OnClick="store" />
    </form>
    

    asp:FormParameter <form> 你的HTML缺少一个原样。

        3
  •  0
  •   AbdulAziz Nurov    7 年前