设为首页 收藏本站
查看: 875|回复: 0

SharePoint 2010 PowerShell 系列 之 应用总结 (二)

[复制链接]

尚未签到

发表于 2015-9-24 13:37:55 | 显示全部楼层 |阅读模式
  好久没更新文章了,趁闲的时间再总结一下PowerShell。
  有的人善于用API创建列表,我觉得用XML结构表示列表更容易理解,所以下面的介绍都是以Xml解构来显示的。
  创建列表时,有两个重要的字段DisplayName 和 StaticName,一个是显示名,一个是内部名,在开发时发现如果把DisplayName写成中文,StaticName写成英文,创建列表成功后,StaticName被编码,很显示不是我们想要的答案,也不知是否为微软的Bug。
  创建列表字段


DSC0000.gif DSC0001.gif View Code


#Add Fields
Function AddField($list,$xml,$bool,$fieldOptions){
$list.Fields.AddFieldAsXml($xml,$bool,$fieldOptions)
}
#代码维护 字段
Function AddListField_Code($web,$list,$listName){
#名称
$CodeNameXml="<Field Type='Text'  DisplayName='CodeName' Required = 'TRUE' MaxLength='255' FromBaseType='TRUE'/>"
AddField $list $CodeNameXml $true $DefaultViewFieldOptions
#上级
$ParentIdXml="<Field Type='Lookup' DisplayName='ParentId' Required = 'FALSE' List='{"+$list.ID+"}' ShowField='CodeName' />"
#扩展字段
AddField $list $ParentIdXml $TRUE $DefaultViewFieldOptions
$fieldParentId = $list.Fields["ParentId"]
$ParentIdCodeNameXml="<Field Type='Lookup' DisplayName='ParentId:CodeName' Required = 'FALSE'  List='{"+$list.ID+"}' ShowField='CodeName' FieldRef='{"+$fieldParentId.ID+"}' />"
AddField $list $ParentIdCodeNameXml $TRUE $DefaultViewFieldOptions
$list.Update()
}

#代码维护
Function AddList_Code($web){
$listName = "代码维护"
$listDescription = "代码维护"
DeleteList $web $listName  
AddList $web $listName $listDescription $GenericListTemp
$list = $web.Lists.TryGetList($listName)
OnQuickLaunchList $list True
AddListField_Code $web $list $listName
UpdateDisplayName_Code $list
}
  一般情况下,我们是要显示中文名称的,有没有办法修改呢,答案是肯定可以修改的,下面是修改的方法


View Code


#Update DisplayName
Function UpdateDisplayName($list,$oldName,$newName){
$list.Fields[$oldName].Title = $newName
$list.Fields[$oldName].Update()
}
#代码维护 修改显示名
Function UpdateDisplayName_Code($list){
UpdateDisplayName $list "标题" "代码"
UpdateDisplayName $list "CodeName" "名称"
UpdateDisplayName $list "ParentId" "上级"
}
  用PowerShell开发时费时,但是到部署时就知道他的强大,大家慢慢体会就行了。
  为了验证上面关于Bug的问题,特意在Sharepoint 2013架构上做了测试,结果还是被编码成<FieldRef Name='_x540d__x79f0_' />不知为什么这样,难道这是别有用意还是本来就是这样呢?

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-118278-1-1.html 上篇帖子: 利用 PowerShell 分析SharePoint WebApplication 体系结构 下篇帖子: SharePoint 2010 PowerShell 系列 之 文档管理 初级应用
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表