问题标签 [eventreceiver]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sharepoint-2010 - Sharepoint 2010 事件接收器未触发子站点
我有一个事件接收器(WebAdding 和 WebProvisioned),它适用于从站点集的根目录创建的站点。但是,子站点(例如,在其他区域内创建的团队站点)根本不会触发代码。
有谁知道为什么?
在此先感谢,马特
c# - 用于阻止 SharePoint 列表项事件接收器帮助的扩展方法
当从事件接收器外部执行更新时,我遇到了这篇文章,它为防止事件接收器触发 SPListItem 的问题提供了一个很好的解决方案。代码按照描述 100% 工作,我对解决方案印象深刻,问题是我不完全理解它。
为了简单起见,让我们忽略 SystemUpdate 方法,因此我们只处理 SPListItem.Update 重载和代码中声明的私有类。
我没有“得到”的一点是类 rh 如何与 SPListItem 项“链接”或“关联”。重现保存点击返回的方法...
我可以看到我们实例化了 SPItemEventReceiverHandling 的实例,rh,如果 doNotFireEvents 为真,我们在 rh 上调用 DisableEventFiring(),然后在完成后在 rh 上调用 EnableEventFiring()。我看不到的链接在“rh”和“item”之间。在进行更新时,SharePoint 如何“知道”将 rh 用作事件接收器?
我希望我已经解释清楚了。如果不让我知道,我会尝试进一步澄清。
service - Word 自动化服务项目添加的事件未触发
我正在使用 Word Automation Services 将 Word 文档转换为 PDF。我在文档库中编写了一个 ItemAdded 事件接收器,其中 PDF 文档由 Word 自动化服务创建。当 Word Automation Services 将文件添加到 Sharepoint 文档库时,它不会触发。
如果我手动添加一个文件来调试 ItemAdded 事件接收器,它就会被触发。我不知道为什么从 Word Automation Services 添加文件时它没有被触发。
sharepoint - Checkincomments 不存储在文档库中
我在 SharePoint 2007 中对 spfile 对象的 checkincomments 遇到了问题。在 itemadding、itemadded、itemupdating 和 itemupdated eventreceivers 中具有自定义内容类型和自定义代码的自定义 doclib 上的 checkincomments 未存储。
我找到了有关此问题的以下链接 http://social.technet.microsoft.com/Forums/en-SG/sharepointgeneral/thread/e7c42f6b-1dab-419a-aee6-010845b31ea0
和 http://www.theblackknightsings.com/HowToChangeCheckinCommentAfterSave.aspx
但我不想直接更改数据库,所以我没有尝试过最后的链接解决方案。
在 itemupdating 事件中,您可以通过 properties.AfterProperties["vti_sourcecontrolcheckincomment"] 获取评论。在 itemupdated 中,此属性为空。
因此,在第一次喜欢之后,我将评论存储在 itemupdating 中的一个自定义内容字段中,从 itemupdated 中获取它并制作一个 file.CheckIn("mycomment", SPCheckinType.OverwriteCheckIn) 并禁用事件触发。
当我第二次将文件上传到文档库并将版本增加一个(启用主要版本控制)时,itemupdating 和 itemupdated 被触发两次。
在第二个 itemupdated 之后,异步 itemupdated 似乎还没有准备好,我得到一个信息,表明该文件当前正在由我自己使用。所以更新失败。
有没有更简单的方法来确保自定义文档库中的签入注释正确存储?
事件第二次触发的解决方案是什么?
任何帮助都会很棒!
c# - 如何使用 EventReceiver 以编程方式更改 SharePoint 2010 中的页面名称和 url
我想要实现的很简单。当用户在 SharePoint 2010 中创建新页面时,我想删除特殊字符并将页面名称/URL 截断为一定数量的字符。
例如:用户在创建新页面对话框中输入“我要创建这个带有超长名称的页面!@#$%^^&**_+”,实际创建的页面是“extralongname.aspx”
我得到了删除特殊字符并截断部分。我只是无法更改页面名称/网址。
任何想法?
问候,
肯
sharepoint-2010 - ItemAdded 触发 3 次
我以编程方式为 SharePoint 文档库添加了 ItemAdded eventreceiver,并且在我的计算机上一切正常。我签入了我的代码,我的同事从我们的 TFS 获得了最新的代码,构建了项目并对其进行了测试。
在我同事的计算机上,当他从 SharePoint GUI 添加文档时,ItemAdded 事件会触发 3 次。
在我的电脑上,它只会触发一次。
你见过类似的事情,你知道如何解决吗?
sharepoint - 工作流或事件监听器
我们正在为我们的客户建立一个外联网共享点门户。每个客户都有一个站点。站点总数将在 2000-3000 之间。
当客户端上传新文档时,我需要将文档从 SiteCollectionA/SiteA/DocumentLibrary 复制到另一个网站集上的另一个全局列表。
我应该创建工作流来复制文档或事件侦听器吗?上传后将允许客户端更新文档属性,并且这些更改也必须推送到全局列表中。
我的选择是事件监听器,因为它更清洁、更便宜、更容易。我不是工作流专家,但我认为在 2000 多个站点上维护/更新/重新发布工作流比事件监听器更难。
你们有什么感想?
谢谢
sharepoint - 锚标记在事件接收器中不起作用
我创建了一个事件接收器,以在添加项目时触发电子邮件。在此事件中,接收器电子邮件将发送给员工。在电子邮件内容中,我想提供一个链接,以便员工可以直接访问该网站。但在我的代码中我遇到了一些问题。这是我的代码
我得到了错误
MMsgBody += "<tr><td><a href=" + http://tri02sharepoint:47709/Lists/Learning%20Calendar/calendar.aspx + ">Click Here</a></td></tr>";
http:// <---- 这里是错误
这些是错误
错误 1 无效的表达式术语 ':'
错误 2 ; 预期
错误 3;预期的
c# - 自定义列表定义上的 SharePoint EventReceiver ItemUpdating 问题
我的 CustomListDefinition 和 CustomEventReceiver 有问题。
ListDefinition 工作正常。我可以从中创建列表,并且一切看起来都应该如此。我的 EventReceiver 作用于以下四个事件:ItemAdding、ItemAdded、ItemUpdating 和 ItemUpdated。
通过 WebInterface 添加/更新 ListItems 时,一切正常,没有任何错误。当我尝试通过 C#(或 PowerShell)创建或编辑 ListItem 时,我收到以下错误:
“未知状态模块:33 消息:134”
即使代码实际上什么也没做!我用一个新的空 EventReceiver 重现了这个问题,它附加到我的自定义 ListDefinition 的 ItemUpdating 事件。
此问题仅发生在ItemUpdating事件上。当我在没有此事件的情况下部署我的解决方案时,一切进展顺利。将 EventReceiver 部署到标准列表(例如 Task ListDefinition)也没有像上面那样的问题。
所以我的结论是,我的 ListDefinition 中一定有错误。
有人可以帮我找出错误吗?
我的 Elements.xml
我的 Schema.xml(内容类型和字段定义定义如下面的代码)
该代码有点匿名,因此可能包含一些打字错误。;)
希望你能帮我找到我的问题。
编辑:我发现,事件日志中发生了这个错误:
在 OC.Sommerfest 中加载和运行事件接收器 MyProject.BookingItemEventReceiver 时出错,Version=1.0.0.0,Culture=neutral,PublicKeyToken=asdasdasd。附加信息如下。
事件 ID 为 6875。
c# - HttpContext.Current 始终等于 null
请帮我解决我的问题。我的问题是 HTTPContext.Current 总是等于 null。在此先感谢..请参阅下面的代码