RedPlus 개인 블로그

시삽: 레드플러스 님 
게시판 이동:
 제목 : 코드샘플 : ADO.NET Entity Framework에서 데이터 입력, 출력, 수정, 삭제 처리하기
글번호: 196
작성자: Administrator ( 레드플러스 / redplus@live.com )
작성일: 2010/09/08 오전 11:33:00 (2010/09/08 오전 11:33:00 수정)
조회수: 4270

아래 코드는

ADO.NET Entity Framework를 사용하여 만든 개체에 접근해서

데이터를 출력, 입력, 수정, 삭제하는 샘플 코드를 기록해 본 내용입니다.

 

FrmEntityFramework.aspx

===================================================================

<%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="FrmEntityFramework.aspx.cs" Inherits="WebEntityFramework.FrmEntityFramework" %>
<asp:Content ID="Content1" ContentPlaceHolderID="HeadContent" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
    <h2>엔터티 프레임워크를 사용한 입력, 출력, 수정, 삭제</h2>
    <div>
        카테고리 : 
        <asp:DropDownList ID="lstCategory" runat="server">
        </asp:DropDownList>
        상품명 : 
        <asp:TextBox ID="txtProductName" runat="server"></asp:TextBox>
        상품가격 : 
        <asp:TextBox ID="txtUnitPrice" runat="server"></asp:TextBox>
        <asp:Button ID="btnAdd" runat="server" Text="상품입력" onclick="btnAdd_Click" />
        <asp:Button ID="btnUpdate" runat="server" Text="상품수정" 
            onclick="btnUpdate_Click" />
        <asp:Button ID="btnDelete" runat="server" Text="상품삭제" 
            onclick="btnDelete_Click" />
    </div>

    <asp:GridView ID="ctlProductLists" runat="server">
    </asp:GridView>
</asp:Content>

 

 

FrmEntityFramework.aspx.cs

===================================================================
using System;
using System.Linq;
using System.Web.UI;
using WebEntityFramework.Models; //

namespace WebEntityFramework
{
    public partial class FrmEntityFramework : System.Web.UI.Page
    {
        private Models.NorthwindEntities context = new Models.NorthwindEntities();

        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                DisplayData();
                DisplayCategory();
            }
        }

        private void DisplayCategory()
        {
            // 카테고리 바인딩
            var q = from c in context.Categories
                    orderby c.CategoryID descending
                    select new { CategoryID = c.CategoryID, CategoryName = c.CategoryName };

            lstCategory.DataSource = q.ToList();
            lstCategory.DataTextField = "CategoryName";
            lstCategory.DataValueField = "CategoryID"
            lstCategory.DataBind();
        }

        private void DisplayData()
        {
            // LINQ를 사용한 출력
            var q = context.Products.OrderByDescending(p => p.ProductID);

            this.ctlProductLists.DataSource = q.ToList();
            this.ctlProductLists.DataBind();
        }

        protected void btnAdd_Click(object sender, EventArgs e)
        {
            // 엔터티 개체 생성
            Models.Product p = new Product();
            // 각각의 속성 지정
            p.CategoryID = Convert.ToInt32( lstCategory.SelectedValue );
            p.ProductName = txtProductName.Text;
            p.UnitPrice = Convert.ToDecimal( txtUnitPrice.Text );
            // AddObject()
            context.Products.AddObject(p); // Add, Delete, 
            // SaveChanges() 
            context.SaveChanges(); // 실행

            DisplayData(); 
        }

        protected void btnUpdate_Click(object sender, EventArgs e)
        {
            // 79번 개체 가져오기
            Models.Product p = context.Products.Where(pro => pro.ProductID == 79).SingleOrDefault();
            // 원하는 값 수정
            p.ProductName = "좋은 컴퓨터로 변경";
            // 실행/적용
            context.SaveChanges();

            DisplayData(); 
        }

        protected void btnDelete_Click(object sender, EventArgs e)
        {
            // 79번 개체 삭제
            Models.Product p = context.Products.First(pro => pro.ProductID == 79);

            if (p != null)
            {
                context.Products.DeleteObject(p); // 
                context.SaveChanges(); // 
            }

            DisplayData(); 
        }
    }
}

끝.

 

 

 
이전 글   다음 글 삭제 수정 답변 글쓰기 리스트


관련 아티클 리스트
  제       목 파일 작성자 작성일 조회
이전글 "웹 표준 : div로 레이아웃 만들기" 강좌를 오픈합니다. - Administrator 2010-09-08 4178
현재글 코드샘플 : ADO.NET Entity Framework에서 데이터 입력, 출력, 수... - Administrator 2010-09-08 4270
다음글 앞으로 닷넷코리아의 모든 동영상은 Silverlight Video Player로 실행... - Administrator 2010-09-07 4035
관련 페이지 리스트
numtitlenamedateview
388 C 언어에서 값 전달과 참조 전달(Call By Value and Call By Re... Administrator 2023-03-09 3559
387 병합 알고리즘 순서도 2022-10-22 5091
386 C 언어 강의: scanf를 엔터키를 기준으로 여러 행으로 값을 입력 받기 Administrator 2022-01-09 4402
385 C 언어: scanf 사용해서 표준 입력인 콘솔로부터 나이를 정수로 입력 받아 출력 Administrator 2022-01-07 3214
384 Java 코드 샘플 - Function 인터페이스로 람다 식 만들기 Administrator 2022-01-04 3110
383 C# 코드 샘플 - 널 조건부 연산자 사용하기 Administrator 2022-01-02 3150
382 C# 코드 샘플 - 널 병합 연산자와 default 키워드 Administrator 2022-01-02 3062
381 C# 코드 샘플 - 널 병합 연산자로 문자열 변수의 NULL 값 확인하기 Administrator 2022-01-02 2974
380 C# 강의 - 14세 미만 체크 메서드 구현 Administrator 2022-01-01 3028
379 C 언어 천 단위 콤마 찍기 thousands_separator.c Administrator 2021-12-30 4159
378 for 문 순서도 - for 문(for loop) 순서도(flowchart) Administrator 2021-12-28 6870
377 C 언어 코드 샘플 - 전처리기 - 조건부 컴파일 Administrator 2021-12-27 3051
376 C 언어 코드 샘플 - 전처리기 - 매크로 함수 Administrator 2021-12-27 3019
375 http-server 설치하기 - 로컬 루프백 주소로 웹페이지 실행 2021-12-27 3023
374 C 언어 코드 샘플 - N명의 학생의 점수를 입력받아 1차원 배열에 저장 후 총점 구... Administrator 2021-12-27 3079
373 Java 코드 샘플 - 두 수의 합을 구하는 함수 Administrator 2021-12-26 2954
372 C 언어 코드 샘플 - 두 수의 합을 구하는 함수 Administrator 2021-12-26 2995
371 C# 교과서 강좌 - LINQ - Select 확장 메서드에 익명 형식 사용하기 Administrator 2021-12-26 3114
370 C# 교과서 강의 - LINQ - Select 확장 메서드를 사용하여 새로운 형태로 ... Administrator 2021-12-26 3029
369 C 언어 코드 샘플 - static-shared - 정적(공유) 변수 사용하기 Administrator 2021-12-26 3046
 
 
 
손님 사용자 Anonymous (손님)
로그인 Home