读书人

sharepoint中如何控制具体的字段呢

发布时间: 2012-02-20 21:18:23 作者: rapoo

sharepoint中怎么控制具体的字段呢?
shareponit中 一个普通的列表 我想让匿名用户新建列表时 某些字段不显示 该怎么做?

我在新建页面中放了个webpart onlaod里面
SPList list = web.Lists["a"];
SPUser user = SPContext.Current.Web.CurrentUser;

SPField field1 = list.Fields["aa"];
if (user == null)//匿名
{
web.AllowUnsafeUpdates = true;

field1.ShowInNewForm = false;
field1.Update();

web.AllowUnsafeUpdates = false;
}

field1.Update();之后 用户直接就变成系统用户了 该怎么解决?

[解决办法]
修改Field的定义是需要权限的, 要想绕过权限控制, 如下写法:

C# code
            SPSecurity.RunWithElevatedPrivileges(delegate()            {                using (SPSite site = new SPSite(siteId))    //这里必须重新取SPSite对象, 新取到的site对象, 是有full control权限的.                {                    using (SPWeb web = site.OpenWeb(webUrl))                      {                        //你的代码,                                        }                }            });
[解决办法]
帮顶
[解决办法]
后台执行的代码都是由sharepoint的内部账户去执行的

你是说update()后,当前登陆用户是系统账户了,而不是匿名的了?

读书人网 >行业软件

热点推荐