내보내기(0) 인쇄
모두 확장

방법: WCF Data Services를 통해 Azure SQL 데이터베이스에 연결

업데이트 날짜: 2014년 4월

이전에 ADO.NET Data Services로 알려진 WCF Data Services를 사용하면 Open Data Protocol(OData)을 구현하는 REST(Representational State Transfer) 기반의 데이터 서비스를 만들 수 있습니다. OData는 표준 인터넷 프로토콜을 기반으로 하기 때문에 데이터 서비스는 HTTP 메시지를 보내고 받고 XML를 구문 분석할 수 있는 클라이언트 응용 프로그램으로 액세스할 수 있습니다. 또한 여러 응용 프로그램 플랫폼에서 OData 피드를 쉽게 사용할 수 있도록 도와 주는 클라이언트 라이브러리가 많이 있습니다. OData를 지원하는 클라이언트 라이브러리에 대한 자세한 내용은 OData SDK를 참조하십시오.

WCF Data Services에서 데이터 모델을 정의하고 기본 데이터 원본에 대한 액세스를 제공하려면 데이터 서비스 공급자를 구현해야 합니다. Entity Framework 공급자를 사용하여 Azure SQL 데이터베이스에 대한 데이터 서비스를 만들 수 있습니다. WCF Data Services 사용 방법에 대한 자세한 내용은 WCF Data Services 설명서를 참조하십시오.

note참고
Azure SQL 데이터베이스에 대한 연결을 열 때 연결 제한 시간을 30초로 설정합니다.

이 항목에서는 Azure SQL 데이터베이스를 기반으로 하는 간단한 데이터 서비스와 데이터 서비스에 액세스하는 Azure 응용 프로그램을 만드는 방법을 보여줍니다. How To: Migrate a Database by Using Scripts에서 Azure SQL 데이터베이스에 배포되는 School 예제 데이터베이스가 사용됩니다.

이 예제를 따라 하려면 먼저 Azure SDKAzure Tools for Microsoft Visual Studio를 설치해야 합니다. Azure에 대한 자세한 내용은 Azure SDK를 참조하십시오. DSInit 유틸리티를 사용하여 Azure Tools와 함께 설치되는 개발 저장소 서비스도 초기화해야 합니다. 개발 저장소는 한 번만 초기화할 수 있습니다. 자세한 내용은 개발 저장소 정보를 참조하십시오.

  1. Visual Studio의 파일 메뉴에서 새로 만들기를 가리킨 다음 프로젝트를 클릭합니다.

    Warning경고
    Azure 개발 패브릭을 사용하려면 관리자로 Visual Studio를 실행해야 합니다.

  2. 프로젝트 형식 창에서 을 선택합니다. 템플릿 창에서 ASP.NET 웹 응용 프로그램을 선택합니다. 이름으로 SchoolApplication을 입력한 다음 확인을 클릭합니다.

  3. 솔루션 탐색기에서 SchoolApplication을 마우스 오른쪽 단추로 클릭하고 추가를 가리킨 다음 새 항목을 선택합니다.

  4. ADO.NET 엔터티 데이터 모델을 선택하고 SchoolDataModel.edmx이름으로 입력한 다음 추가를 클릭합니다.

  5. 엔터티 데이터 모델 마법사에서 데이터베이스에서생성을 선택하고 다음을 클릭합니다.

  6. 새 연결을 클릭하고 Azure SQL 데이터베이스 서버의 School 데이터베이스에 대한 정보를 입력한 다음 확인을 클릭합니다. 아니요를 선택하여 중요한 데이터를 연결 문자열에서 제외합니다. 이 정보는 내 응용 프로그램 코드에 설정합니다. 다음을 클릭합니다.

  7. 테이블을 선택하고 마침을 클릭합니다. 데이터베이스의 각 테이블에 대해 엔터티 형식을 정의하는 .edmx 파일이 생성됩니다.

    Caution주의
    Visual Studio 2010 이상에서 이 예제를 실행하려면 생성된 개체 이름 복수화 또는 단수화 확인란을 지웁니다. Visual Studio 2008에서 이 예제를 실행하면 Entity Framework는 Azure SQL 데이터베이스에서 .edmx 파일 및 관련 클라이언트 클래스를 만들 수 없으며 모델 및 매핑 파일 생성을 위해 SQL Server의 로컬 인스턴스에 연결해야 합니다. 하지만 모델 및 매핑 파일이 생성되면 Entity Framework가 Microsoft Azure SQL 데이터베이스에 연결됩니다.

  1. 솔루션 탐색기에서 SchoolApplication을 마우스 오른쪽 단추로 클릭하고 추가를 가리킨 다음 항목을 선택합니다.

  2. WCF Data Service를 선택하고 이름으로 SchoolDataService.svc를 입력한 다음 추가를 클릭합니다.

  3. SchoolDataService.svc.cs 또는 SchoolDataService.svc.vb에서 데이터 서비스를 정의하는 클래스의 정의에 있는 /* TODO: put your data source class name here */을(를) 모델의 엔터티 컨테이너가 되는 형식(이 경우 SchoolEntities)으로 바꿉니다. 클래스 정의는 다음과 비슷해야 합니다.

  4. InitializeService 함수의 자리 표시자 코드를 Course, DepartmentPerson 엔터티에 액세스 권한을 부여하는 다음 코드로 바꿉니다.

  1. 솔루션 탐색기에서 솔루션을 마우스 오른쪽 단추로 클릭하고 추가를 가리킨 다음 새 프로젝트를 클릭합니다.

  2. 새 프로젝트 추가 대화 상자의 프로젝트 형식 창에서 클라우드 서비스를 선택합니다. 이름으로 SchoolSite를 입력한 다음 확인을 클릭합니다.

  3. 새 클라우드 서비스 프로젝트 대화 상자에서 ASP.NET 웹 역할클라우드 서비스 솔루션 창에 추가한 다음 확인을 클릭합니다.

  4. Default.aspx의 원본을 다음 코드로 바꿉니다.

    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
        <title></title>
    </head>
    <body>
        <form id="form1">
        <div>
        
            <asp:DropDownList ID="peopleList" runat="server" 
                onselectedindexchanged="peopleList_SelectedIndexChanged"
        AutoPostBack="True">
            </asp:DropDownList>
            <br />
            <br />
            <asp:Label ID="infoLabel" runat="server"></asp:Label>
            <br />
            
        
        </div>
        </form>
    </body>
    </html>
    

    peopleList라는 드롭다운 목록과 infoLabel이라는 Label 컨트롤이 만들어집니다.

  5. F6 키를 눌러 응용 프로그램을 빌드합니다.

  6. 솔루션 탐색기에서 웹 역할 프로젝트를 마우스 오른쪽 단추로 클릭한 다음 서비스 참조 추가…를 클릭합니다.

  7. 서비스 참조 추가 대화 상자에서 검색을 클릭합니다. SchoolDataService.svc가 서비스 창에 나타납니다. 이름으로 SchoolServiceReference를 입력한 다음 확인을 클릭합니다. 데이터 서비스 리소스에 액세스하는 데이터 클래스를 포함하는 파일이 추가됩니다.

  1. Default.aspx.cs 또는 Default.aspx.vb에서 다음 using 문(Visual Basic에서는 Imports)을 추가합니다.

  2. partial 클래스에서 DataServiceContext에 대한 다음 선언과 데이터 서비스의 URI(서비스 참조 추가 대화 상자의 주소 필드에 이전에 표시된 URI)를 추가합니다.

  3. Page_Load 메서드에서 데이터 서비스 컨텍스트를 인스턴스화하고 다음 코드를 추가하여 데이터 서비스의 정보가 포함된 드롭다운 목록을 로드합니다.

  4. Default.aspx의 디자인 뷰에서 드롭다운 목록을 두 번 클릭하여 peopleList_SelectedIndexChanged 이벤트를 추가합니다.

  5. peopleList_SelectedIndexChanged 이벤트에서 다음 코드를 추가하여 선택한 사람을 기준으로 Label 컨트롤을 채웁니다

  1. How To: Migrate a Database by Using Scripts의 지침에 따라 School 데이터베이스를 Azure SQL 데이터베이스로 마이그레이션합니다.

  2. SchoolApplication 프로젝트에서 Web.config 파일을 엽니다. Azure SQL 데이터베이스에 연결되도록 연결 문자열을 변경합니다.

  3. 솔루션 탐색기에서 WebRole1 프로젝트를 마우스 오른쪽 단추로 클릭하고 시작 프로젝트로 설정을 선택합니다.

  4. F5 키를 눌러 응용 프로그램을 실행합니다.

참고 항목

Microsoft는 MSDN 웹 사이트에 대한 귀하의 의견을 이해하기 위해 온라인 설문 조사를 진행하고 있습니다. 참여하도록 선택하시면 MSDN 웹 사이트에서 나가실 때 온라인 설문 조사가 표시됩니다.

참여하시겠습니까?
표시:
© 2014 Microsoft