티스토리 뷰

 

Windows 스토어 & Windows Azure Web Sites

 

Windows Azure Mobile Services 를 통해서 Windows 8 App 에 대한 Data, Push Notification, Authentication 에 대한 내용을 접근할 수 있는데 Data 에 대한 내용은 추가적으로 Windows Azure Web Sites 를 통해서 접근이 가능합니다.

 

본 글에서는 ASP.NET MVC 4 Web API를 이용해서 Windows 8 App 에서 데이터를 조회하도록 하겠습니다. 먼저 데이터에 해당하는 SQL Azure 에 대한 내용은 미리 데이터가 아래 그림처럼 추가되어 있습니다.
 

SQL Azure를 이용하는 ASP.NET MVC 4  프로젝트를 .NET Framework 4로 생성합니다. 여기서는 아래 그림처럼 Web API 프로젝트로 생성합니다.
 

ADO.NET Entity Framework 을 통해 SQL Azure를 접근해보도록 하겠습니다. SQL Azure의 서버와 암호를 통해 해당 테이블을 접근합니다.
 

Web API 를 생성하기 위해 컨트롤러를 추가하면서 빈 API 컨트롤러를 선택합니다.
 

API 에는 아래와 같은 코드를 작성합니다. 

public class DemoController : ApiController

    {

        DemoEntities ent = new DemoEntities();

        // GET api/demo

        public List<Demo> Get()

        {

            var d = from p in ent.Demoes

                    orderby p.ID descending

                    select p;

 

            return d.ToList();

        }

테스트해서 JSON 파일을 확인했으면 Windows Azure로 게시합니다.

 

게시가 잘 되었다면 Windows 스토어 프로젝트를 생성합니다. 여기서는 빈 App 프로젝트로 생성합니다. MainPage.xaml.cs 에 아래와 같은 코드를 작성합니다. 위에서 게시한 Web API를 호출해서 ListBox에 바인딩하는 코드를 아래와 같이 작성합니다. 

public async void GetItems()

        {

            var serviceURI = "http://웹사이트.azurewebsites.net/API/Demo";

 

            using (var client = new System.Net.Http.HttpClient())

            using (var response = await client.GetAsync(serviceURI))

            {

                var result = await response.Content.ReadAsStreamAsync();

 

                var ser = new DataContractJsonSerializer(typeof(ObservableCollection<Demo>));

                var data = ser.ReadObject(result) as ObservableCollection<Demo>;

 

                this.listValues.ItemsSource = data;

            }

        }

Web API를 통해 손쉽게 JSON 처리가 가능하며 MVC 4 에서도 손쉽게 사용이 가능합니다. 또한 위에서 보았듯이 Web APIWindows 스토어 앱에서도 호출이 가능합니다. Windows Mobile Services의 경우 50~1,000건으로 제한되는데 필요하다면 1,000건 이상도 조회가 가능합니다.

'Microsft Azure' 카테고리의 다른 글

SQL Azure Export / Import – Preview Portal  (0) 2012.10.10
Service Bus - Preview Portal  (0) 2012.10.08
Windows Azure – Mobile Services (4)  (0) 2012.10.05
Windows Azure Update - 9월  (0) 2012.09.20
Windows Azure – Mobile Services (3)  (0) 2012.09.10
댓글