回答

1

我不知道您是否可以通過Web部件來創建任務,但是通過CSOM您可以連接到PS2013項目並創建一些任務。

我會後你在這裏的一段代碼,可以幫助你:

必須先「退房」的項目是這樣的:

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內的「artefact」執行它時,它不起作用。導致項目上下文始終由IIS用戶/應用程序池帳戶執行。在Project Online中,您可以爲用戶使用令牌並在用戶上下文中執行。但在OnPremise SharePoint中這是不可能的。用戶名/密碼不是一個選項。沒有用戶會在企業SSO環境中輸入憑證(再次)。 – STORM

+0

嗨風暴,我很抱歉聽到,也很抱歉沒有幫助你,並誤解你所要求的。好吧,如果我找到解決問題的辦法,不要懷疑我會在這裏發佈。感謝你的回答! –

+0

沒問題。謝謝你幫助我。 – STORM

相關問題