티스토리 뷰
SharePoint 2013 App – 자동 호스트 (Autohosted App) (3)
이번 글에서는 이전에서 작업한 SharePoint 2013 에 대한 프로젝트에 SharePoint의 개체를 액세스해보는 코드를 작성해보겠습니다. 이전 버전에서도 제공된 CSOM-클라이언트 개체 모델(Client Side Object Model) 을 자동 호스트 웹 프로젝트에서 액세스 하게 되며 인증에 대한 부분은 TokenHelper.cs 파일을 통해서 처리되게 구성할 수 있습니다.
TokenHelper.cs 과 CSOM 코드에 대한 내용은 SharePoint 2013 응용 프로그램을 생성하면 웹 프로젝트에 있는 것을 알 수 있습니다.
여기서는 앞에서 작업했던 프로젝트에 CSOM 을 적용해보도록 하겠습니다. 먼저 프로젝트에서 TokenHelper.cs 파일이 있는지 확인하고 소스를 열어 네임스페이스가 프로젝트 이름과 동일한 이름으로 구성되어 있는지 확인합니다. 다르다면 변경해주면 됩니다.
namespace AutohostMVC4Web
{
public class TokenHelper
{
MVC 4 프로젝트에 빈 컨트롤러를 추가합니다. 이름은 Home으로 지정하겠습니다.
생성된 컨트롤러에 아래와 같은 using 구문을 추가합니다.
using Microsoft.SharePoint.Client;
Index 액션 메서드를 아래와 같이 수정합니다.
public ActionResult Index()
{
var contextToken =
TokenHelper.GetContextTokenFromRequest(System.Web.HttpContext.Current.Request);
var hostWeb = System.Web.HttpContext.Current.Request["SPHostUrl"];
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();
clientContext.Dispose();
return View(web.Lists);
}
}
SharePoint URL 을 받아 TokenHelper.GetClientContextWithContextToken 를 통해 CSOM의 Context 개체를 얻어 옵니다. 그리고는 clientContext를 통해 SharePoint 개체들을 액세스 하게 됩니다.
자 그럼 View 에서 화면에 출력해보도록 하겠습니다. Index 메서드에서 오른쪽 클릭하고 뷰를 생성합니다.
뷰에서는 아래와 같은 코드로 변경합니다.
@{
ViewBag.Title = "Index";
}
<div>
<ul>
@foreach (var list in Model)
{
<li>@list.Title</li>
}
</ul>
</div>
AppManifest.xml 파일을 더블 클릭하여 시작 주소를 Home 으로 지정하고 솔루션을 배포하여 자동 호스트 웹에서 CSOM 결과를 확인합니다. {StandardTokens} 에는 SPHostUrl 과 SPAppWebUrl 이 포함되어 있습니다.
필요하다면 아래와 같이 디버깅도 가능합니다.
자동 호스트 웹 응용 프로그램에서 SharePoint 에 있는 개체를 액세스해서 화면에 출력하고 있습니다.
모양이 너무 간단한데 다음 글에서는 Chrome Style을 적용해보겠습니다.
'SharePoint > SharePoint 2013' 카테고리의 다른 글
SharePoint 2013 App – 공급자 (Provider-hosted App) (1) (0) | 2012.12.18 |
---|---|
SharePoint 2013 App – 자동 호스트 (Autohosted App) (4) (0) | 2012.12.13 |
SharePoint 2013 App – 자동 호스트 (Autohosted App) (2) (0) | 2012.12.04 |
SharePoint 2013 App – 자동 호스트 (Autohosted App) (1) (0) | 2012.11.30 |
Apps for SharePoint 2013, Apps for Office (0) | 2012.11.29 |
- Total
- Today
- Yesterday
- SharePoint Object Model
- redJu
- Cloud
- sql server 2012
- SharePoint Online
- Windows Azure 업데이트
- Power BI Desktop 업데이트
- SQL Azure
- 정홍주
- Power BI Update
- 목표
- Power BI 업데이트
- copilot
- Windows Azure
- sharepoint
- hongju
- SharePoint 2010
- Power BI Desktop
- Power BI
- SharePoint 2013
- Visual Studio 2010
- 페이지를 매긴 보고서
- Paginated Report
- Power BI Desktop Update
- Windows Phone 7
- Windows Azure Mobile Services
- 업데이트
- 클라우드
- Power BI Copilot
- Microsoft Fabric
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |