블로그 이미지
정홍주
Azure에 대한 내용뿐만 아니라 새로운 트렌드로 빅데이터, BI, SharePoint, 앱 등의 내용을 다룹니다.

calendar

          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            

Notice

2013.02.14 03:15 SharePoint/SharePoint 2013

 

SharePoint 2013 App – 공급자 (Provider-hosted App) (3)

 

공급자 앱으로 Windows Azure 사이트에 SharePointChrome CSOM을 적용해보겠습니다 

먼저 Chrome 을 적용해 보면 앞에서 살펴본 자동 호스트 앱에서의 script, div 에 대한 내용은 동일합니다. IE의 호환성 보기에 따라 화면이 달라지니 화면이 깨진다면 호환성 보기를 확인하면 됩니다.

http://redju.tistory.com/254 

위 주소에 적용한 head 태그의 script 태그는 동일합니다. Body 태그에서는 aspx 이므로 CSOM 결과를 나타낼 컨트롤을 추가했습니다.

<body style="display: none">

       

    <!-- Chrome control  -->

    <div id="chrome_placeholder"></div>

    <div>

    <asp:literal ID="lists" runat="server"></asp:literal>

    </div>

</body>

 

Visual Studio 2012 SharePoint 응용 프로그램에서 자동으로 생성해준 CSOM 코드를 이용해서 리스트의 제목을 화면에 출력할 수 있습니다.

간략히 아래와 같이 코드를 작성했습니다.

using (var clientContext = TokenHelper.GetClientContextWithContextToken(hostWeb, contextToken, Request.Url.Authority))

            {

                Web web = clientContext.Web;

                clientContext.Load(web, w => w.Lists.Include(l => l.Title)
.Where(l => !l.Hidden));

                clientContext.ExecuteQuery();

               

 

                string str = "<ul>";

                foreach (var item in web.Lists)

                {

                    str += "<li>" + item.Title + "</li>";

                }

                str += "</ul>";

                lists.Text = str;

 

                clientContext.Dispose();

            }

 

최종적으로 결과를 확인합니다. 공급자 앱에서도 Token 을 얻어오면 CSOM 으로 SharePoint 개체에 접근할 수 있다는 것을 확인할 수 있습니다.

신고
posted by 정홍주