七星揽月

Efforts To Make The Best Of Their……
一口吃不出一个胖子,但胖子却是一口一口吃出来的,只要能每天坚持下来,我相信,一定会有收获的
每天进步一点点
  博客园  :: 首页  :: 新随笔  :: 联系 :: 管理

     在SharePoint开发中,当我们对列表项进行添加、删除、修改的时候,更多的只注意到了常见Columns类型,如“Single line of text”,“Multiple lines of text”,“Choice (menu to choose from)”等等,而这些Columns的值很好处理,在代码中就是String、Int、DateTime类型,只要对应上了就OK了。

      但是我们很有可能会不小心或这说错误的给一个类型的Column赋了错误的值,这个Column的类型就是“Person or Group”。

     很多时候,我们看到或操作的“Person or Group”类型的值就是DisplayName或LoginName,直觉判断就是String类型的值,但是,如果在给“Person or Group”类型的Column赋值时一定要小心:“Person or Group”的数据类型是“SPUser”

     如下所示:

     image

   在这里,直接给“Person or Group”类型的Column赋值为Stirng类型的了,才会酿成此祸。立马修改代码,如下图所示:

  image

 

   非常完美,代码执行通过,没有问题。

   总结:

   当我们对一个类型为“Person or Group”的Column赋值时,一定要将“SPUser”赋给它,可以通过SharePoint内置方法直接获取SPUser对象,也可以将”Domain\\UserName”通过SPWeb.EnsureUser()方法转换为SPUser对象,然后赋值。