ответ

1

Я не знаю, можете ли вы создавать Webpart для создания задач, но через CSOM вы можете подключиться к проектам PS2013 и создать некоторые задачи.

Я отправлю вам здесь кусок кода, который может помочь вам:

Вы должны сначала «Check-Out» проекта, как это:

projContext.Load(projContext.Projects); 
projContext.ExecuteQuery(); 

var proj = projContext.Projects.First(p => p.Name == "Project"); 
projContext.ExecuteQuery(); 

var draftProj = proj.CheckOut(); 

projContext.Load(draftProj.Tasks); 
projContext.ExecuteQuery(); 

CreateNewTask(draftProj); 

Затем, вы можете вызвать метод создать новую задачу, посылающий «эскизный проект»

private static void CreateNewTask(DraftProject draftProj) 
{ 
    TaskCreationInformation nt = new TaskCreationInformation(); 

    nt.Name = "Task name"; 
    nt.Start = DateTime.Today; 
    nt.Duration = "20d"; 
    nt.Id = Guid.NewGuid(); 

    draftProj.Tasks.Add(nt); 
    projContext.Load(draftProj.Tasks); 

    draftProj.Update(); 
    projContext.ExecuteQuery(); 

} 

Надежда, что помогает,

+1

Привет Марк, спасибо за пост. Но проблема заключается в авторизации пользователя. Я имею в виду, что этот код отлично работает при использовании SharePoint Online/PWA Online или с помощью консольного приложения. Но это не работает, когда вы выполняете его из «артефакта» в SharePoint. Причина Контекст проекта всегда выполняется учетной записью пользователя/учетной записи пользователя IIS. В рамках Project Online вы можете использовать токен для пользователя и выполнять его в контексте пользователей. Но это невозможно в OnPremise SharePoint. И Username/Password не является вариантом. Пользователь не будет вводить учетные данные (снова) в среде корпоративного SSO. – STORM

+0

Привет, Шторм, мне очень жаль, что это слышно, а также жаль, что вы не помогли вам и не поняли, о чём вы просили. Ну, если я найду какое-то решение вашей проблемы, не сомневаюсь, что я опубликую ее здесь. Спасибо за ответ! –

+0

Нет проблем. Спасибо, пытаясь помочь мне. – STORM