Blog Content

    티스토리 뷰

    48.C# ASP.NET - SqlDataSource 와 ADO [DataControl 1]

    반응형
    SqlDataSource 컨트롤 예제입니다.
    ADO.NET 코드로 작성되었습니다.

    새 프로젝트 - 새 웹 사이트 추가 ( WebDataControl )
    App_Data 폴더에 DB를 추가합니다.
    새 항목 추가 - SQL Server 데이터베이스 ( Database.mdf )

    추가한 DB(데이터베이스)에 테이블을 만들어 줍니다.

    테이블 이름 : Memos
    열이름
    데이터 형식
    Null 허용
    Num
    int         

     Name
       varchar(25)

     Email    varchar(50)
    O
       PostIP
       varchar(15)
    O

    그림으로 보기

    추가된 DB를 연결 시켜줍니다.
    프로젝트를 추가 했을때 기본적으로 생성된 Default.aspx 페이지에 SqlDataSource 컨트롤을 사용합니다.
    도구 - 데이터 - SqlDataSource 컨트롤 추가 및 직접 코드 작성
    Default.aspx

    <html xmlns="http://www.w3.org/1999/xhtml">

    <head runat="server">

        <title></title>

    </head>

    <body>

        <form id="form1" runat="server">

        <div>

            <asp:SqlDataSource ID="SqlDataSource1" runat="server">

            </asp:SqlDataSource>

        </div>

        </form>

    </body>

    </html>


    SqlDataSource 컨트롤을 이용해서 추가한 Database.mdf를 연결 하기 위해
    Default.aspx 의 디자인 모드로 이동합니다.
    Default.aspx 디자인 영역

    [그림48-2]


    [그림48-3]

    연결 끝!

    ADO.NET 코드를 이용하여 DB에 값을 저장하는 예제입니다.
    새 항목 추가 - WebForm을 추가합니다. (FrmAdoInsert.aspx)
    FrmAdoInsert.aspx

    <html xmlns="http://www.w3.org/1999/xhtml">

    <head id="Head1" runat="server">

        <title></title>

    </head>

    <body>

        <form id="form1" runat="server">

        <div>       

            ADO.NET 사용해서 입력<br /><br />

           

            이름 : <asp:TextBox ID="txtName" runat="server"></asp:TextBox><br />

           

            이메일 : <asp:TextBox ID="txtEmail" runat="server"></asp:TextBox><br />

           

            IP주소 :<br /><br />

           

            <asp:Button ID="btnAdd" runat="server" Text="입력" onclick="btnAdd_Click" />

            <br /><br />   

        </div>

        </form>

    </body>

    </html>


    FrmAdoInsert.aspx.cs

    protected void btnAdd_Click(object sender, EventArgs e)

    {

        SqlConnection con = new SqlConnection(

            ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);

        con.Open();

     

        SqlCommand cmd = new SqlCommand();

        cmd.Connection = con;

        cmd.CommandText = "Insert Into Memos Values(@Name, @Email, @PostIP)";

        cmd.CommandType = CommandType.Text;

     

        cmd.Parameters.AddWithValue("@Name", txtName.Text);

        cmd.Parameters.AddWithValue("@Email", txtEmail.Text);

        cmd.Parameters.AddWithValue("@PostIP", Request.UserHostAddress);

     

        cmd.ExecuteNonQuery(); // 저장

     

        // 자신으로 다시 이동 : 새로고침과 동일

        Response.Redirect(Request.ServerVariables["SCRIPT_NAME"]);

     

        con.Close();

    }


    결과확인

    [그림48-4]


    [그림48-5]



    반응형

    Comments