2016-02-02 17 views
0

在项目中,我访问任务字段的方式如下:如何修改C#中使用CSOM的PublishedTask属性?

projContext.Load(proj, p => p.Tasks.Include(t => t.Id, t => t.Name,t => t.Work)); 
projContext.ExecuteQuery(); 

task.Work给我的当前值。我的目标是以编程方式修改该值,但在PublishedTask中没有setter方法,编译器会抱怨该属性是只读的。有没有办法修改PublishedTask类的属性?

回答

0

我找到了解决方案。首先,您需要检查项目,然后才能进行更改。

var proj = projContext.Projects.GetById("d7e63f89-47c0-e511-80d1-00155d4g5202"); 
DraftProject checkoutProj = proj.CheckOut(); 
projContext.Load(checkoutProj); 
projContext.Load(checkoutProj, p => p.Tasks.Include(t => t.Id, t => t.Work)); 
projContext.ExecuteQuery(); 

task.Work = "25"; 
checkoutProj.Publish(true); 
projContext.ExecuteQuery();