0
我們在Microsoft SharePoint 2013中使用Microsoft Project Server 2013.是否可以在CodeBehind中通過C#從WebPart的WebPart創建項目中的任務?如何在Microsoft Project Server 2013中創建新任務
我們在Microsoft SharePoint 2013中使用Microsoft Project Server 2013.是否可以在CodeBehind中通過C#從WebPart的WebPart創建項目中的任務?如何在Microsoft Project Server 2013中創建新任務
我不知道您是否可以通過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();
}
希望幫助,
嗨馬克,謝謝。但問題是用戶授權。我的意思是,使用SharePoint Online/PWA Online或從控制檯應用程序使用時,此代碼可以正常工作。但是,當您從SharePoint內的「artefact」執行它時,它不起作用。導致項目上下文始終由IIS用戶/應用程序池帳戶執行。在Project Online中,您可以爲用戶使用令牌並在用戶上下文中執行。但在OnPremise SharePoint中這是不可能的。用戶名/密碼不是一個選項。沒有用戶會在企業SSO環境中輸入憑證(再次)。 – STORM
嗨風暴,我很抱歉聽到,也很抱歉沒有幫助你,並誤解你所要求的。好吧,如果我找到解決問題的辦法,不要懷疑我會在這裏發佈。感謝你的回答! –
沒問題。謝謝你幫助我。 – STORM