当前位置:  开发笔记 > 编程语言 > 正文

SharePoint:取消注册EventReceiver形成ContentType时出错

如何解决《SharePoint:取消注册EventReceiver形成ContentType时出错》经验,为你挑选了1个好方法。

我有一些问题,取消注册一些事件接收者形成一个内容类型.内容类型和接收器由我自己部署和注册,因此我不会尝试删除任何MOSS内置或内部事件接收器.

我尝试使用以下代码片段将其归档:

using (SPSite site = new SPSite("http://wssdev06/"))
        {
            using (SPWeb web = site.RootWeb)
            {
                // web.AllowUnsafeUpdates = true;

                SPContentType type = web.AvailableContentTypes[];

                while (type.EventReceivers.Count > 0)
                {
                    type.EventReceivers[0].Delete();                        
                }

                type.Update();

                // web.AllowUnsafeUpdates = false;
            }
        }

不幸的是,命令"type.Update()"抛出一个异常,告诉我无法修改集合.正如您在代码中看到的,我已经尝试了不同的方法来解决这个问题,因为允许不安全的更新或使用提升的权限运行此代码.但我总是得到同样的例外.

那么我做错了什么?



1> 小智..:

您的问题是"AvailableContentTypes"属性返回一个READ-ONLY集合.

您还应该使用'ContentTypes'属性,一切都应该没问题.

问候,

挖.

推荐阅读
sx-March23
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有