`
ruilinruirui
  • 浏览: 1050121 次
文章分类
社区版块
存档分类
最新评论

Moss 2007 的几个编程技巧

 
阅读更多

1、提升权限执行的代码

SPSecurity.RunWithElevatedPrivileges(delegate()

{

// 需要提升权限执行的代码

});

应用场景:当前用户可能没有权限执行的操作,但系统需要执行这段代码,这样如果不提升代码权限的话.

系统将会报出 拒绝访问错误.

用上述代码可以将其所辖范围内的代码权限提升到最高.

建议:不到万不得以不要使用,因为滥用会把系统的权限搞混.

2、解决一个或多个域类型未正确安装。请转到列表设置页删除这些域

sharepoint列表内部字段的查看方法
SPQuery查询列表查不出结果,提示“一个或多个域类型未正确安装。请转到列表设置页删除这些域”。
原因:
查询的时候,字段名称需要输入字段的内部名称,而不是看到的那个名称
解决方法:
我写了段代码可以把字段以及对应的内部名称列出来,查一下就可以了。


protected void Button2_Click(object sender, EventArgs e)
{
SPWeb site = SPControl.GetContextWeb(Context);
SPListItemCollection items = site.Lists["测试列表1"].Items;
string tmpstr = "";
SPListItem item = items[0];

for (int i = 1; i < item.Fields.Count; i++)
{
tmpstr = tmpstr+item.Fields[i].ToString()+":" + item.Fields[i].InternalName.ToString()+"<br><br>";
}
tmpstr = tmpstr + "<br><hr><br>";


Label1.Text = tmpstr;
}

3、解决代码引发 Microsoft.SharePoint.Library.SPRequest.AddOrUpdateItem 安全性驗證無效

在更新语句前 

    加上:

      myWeb.AllowUnsafeUpdates = true;//该代码表示允许代码更新

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics