2014-05-22 6 views
0

Я создаю приложение, размещенное поставщиком, которое должно создать список календарей в SharePoint. Я хочу, чтобы это был групповой календарь позже, но сначала мне просто нужно сделать шаг 1: Создать календарь.Провайдер размещал приложение sharepoint, создавал календарь SharePoint

Я не могу найти провайдера, на котором размещены руководства о том, как создавать SharePoint-календарь программно. Я не могу найти ListTemplateStyle для календаря, поэтому я попытался событийно-шаблон, я не знаю, если его goint работать, так как есть ошибка появляется, когда я пытаюсь запустить этот код ниже:

Uri hostWeb = new Uri(Request.QueryString["SPHostUrl"]); 

     using (var clientContext = TokenHelper.GetS2SClientContextWithWindowsIdentity(hostWeb, Request.LogonUserIdentity)) 
     { 
      Web web = clientContext.Web; 
      ListCreationInformation listCreator = new ListCreationInformation(); 
      listCreator.Title = "CompanyCalendar"; 
      listCreator.Description = "Workcalendar"; 
      listCreator.TemplateType = (int)ListTemplateType.Events; //106 = events 
      //clientContext.Load(web); 
      web.Lists.Add(listCreator); 
      clientContext.ExecuteQuery(); 

     } 

System.Net.WebException: The remote server returned an error: (401) Unauthorized.

Line 27:     //clientContext.Load(web); 
Line 28:     web.Lists.Add(listCreator); 
Line 29:     clientContext.ExecuteQuery(); 
Line 30: 
Line 31:    } 

По-видимому, им несанкционированно создать список здесь по какой-то причине. У меня есть разрешение на веб-доступ к полному контролю, и мой сертификат выглядит следующим образом:

<appSettings> 
<add key="ClientId" value="ebcb24ca-afbb-4822-8887-f91504f3d25f" /> 
<add key="ClientSigningCertificatePath" value="C:\Certs\HighTrustSampleCert.pfx" /> 
<add key="ClientSigningCertificatePassword" value="1234" /> 
<add key="IssuerId" value="11111111-1111-1111-1111-111111111111" /> 
</appSettings> 

Любые idéas?

мой второй вопрос: что мне нужно, чтобы сделать календарь календарем группы? Любые намеки?

Благодаря

ответ

0
+0

Я предполагаю, что я не могу создать календарь программно, так что я думаю, я должен создать общий список первым, а затем создать CalendarView каким-то образом, но моя проблема в том, что я не получаю. разрешение на создание простого списка на моем сайте разработчика.Я не знаю, что делать :( – Hannes

0

Я решил это самостоятельно.

Я использовал сайт разработчика SharePoint для отладки (в моем случае «https://[email protected]»). Поскольку я работаю на виртуальной машине, я должен использовать этот локальный сервер-сайт вместо этого (в моем случае "http://SERVER1).

При входе в систему на своей виртуальной машине я вхожу в систему со своим именем и паролем Windows (в моем случае имя пользователя было «Разработчик»), и чтобы иметь возможность использовать этот логин с помощью codenippet "Request.LogonUserIdentity", мой отладочный сайт должен был быть виртуальным сервером (в моем случае "http://SERVER1).

После того, как я перешел на SERVER1, он работал и ListTemplateType.Eventswich является шаблоном для календаря создается и проблема решена.

Вопрос 1: Как создать sharepointcalendar.
Answear: (int)ListTemplateType.Events;

Вопрос 2:System.Net.WebException: The remote server returned an error: (401) Unauthorized.
Answear: Проверьте debugsite. Убедитесь, что "Request.LogonUserIdentity" или (пользователя вы вошли в окно с) имеет promission на ваш сайт, что вы отлаживать в стороне

Вопроса 3: Как установить «группу календарь опцию» "true" программно на privider размещенного приложение.
Answear: Не решено :(

Смежные вопросы