2013-09-27 1 views
1

Visual Studio를 사용하여 SharePoint 2013 공급자 호스팅 응용 프로그램을 만들었습니다. 웹 파트를 사용하지 않습니다. 나는 컬렉션 들이지이 코드셰어 포인트 공급자로부터 SharePoint 2013 목록 데이터 검색 호스트 된 응용 프로그램

private DataTable GetItemDetails() 
{ 
     SPWeb spweb = SPContext.Current.Web; 
     SPList ticketsList = spweb.GetList("[http://git-hub/sites/mysiteName/Lists/CalendarList/AllItems]"); 
     return ticketsList.Items.GetDataTable(); 
} 

에 의해 시각적 웹 부분이 나에게 항목의 테이블을주고 난을 얻기 위해 해당 테이블을 사용하는 것을 할 수있는 SharePoint 사이트에 상주는 SharePoint 2013 목록에서 데이터를 검색해야 필요한 데이터. 하지만 문제는 지금 C# 코드 뒤에 asp.net 페이지로 만들어진 SharePoint 응용 프로그램에서 동일한 데이터를 사용하기를 원합니다. 나는 동일한 코드를 사용하지만 처럼 나에게 오류를주는 "

는 Microsoft SharePoint가. 64 비트 실행 파일에서 실행중인 을 확인하십시오 32 비트 프로세스에서 지원되지 않습니다." 심지어 앱 빌드 설정에서 플레이트 양식을 사용하고 있습니다. 사용자에게 일정을 보여주기 위해 asp.net 페이지의 목록 데이터를 검색 할 수있는 방법이 있으면 알려 주시기 바랍니다.

+0

안녕하세요, 난 그냥 내 동료의 도움으로이 질문에 대한 해결책을 발견했다. 우리는 SharePoint Providing의 웹 서비스를 사용했습니다. 다음은 웹 서비스를 가져 오는 링크입니다. http://msdn.microsoft.com/en-us/library/lists.aspx 다음은이 사용 방법을 설명하는 매우 유용한 블로그 링크입니다. http://sarangasl.blogspot.ca/2009/12 /sharepoint-list-web-service.html 감사합니다. 다행히 누군가의 날을 구할 것입니다. 이 결과를 얻으려면 하루가 걸렸습니다. –

답변

0

당신은 또한 관리 클라이언트 개체 모델을 사용할 수 있습니다

Uri hostWeb = new Uri(Request.QueryString["SPHostUrl"]); 
     List<string> listOfUsers = new List<string>(); 


     using (var clientContext = TokenHelper.GetS2SClientContextWithWindowsIdentity(hostWeb, Request.LogonUserIdentity)) 
     { 

      List oList = clientContext.Web.Lists.GetByTitle("TestList"); 

      CamlQuery camlQuery = new CamlQuery(); 
      camlQuery.ViewXml = "<View><Query><Where><Geq><FieldRef Name='ID'/>" + 
       "<Value Type='Number'>0</Value></Geq></Where></Query><RowLimit>100</RowLimit></View>"; 
      Microsoft.SharePoint.Client.ListItemCollection collListItem = oList.GetItems(camlQuery); 

      clientContext.Load(collListItem); 

      clientContext.ExecuteQuery(); 

      foreach (Microsoft.SharePoint.Client.ListItem oListItem in collListItem) 
      { 
       listview.Add(string.Format("ID: {0} \nTitle: {1}", oListItem.Id, oListItem["Title"])); 
      } 

      ListList.DataSource = listOfUsers; 
      ListList.DataBind(); 

     } 
관련 문제