记录一个关于在event receiver中执行页面跳转的问题

问题描述

===========

想要在某个列表添加完一个列表项之后跳转到某个特定的页面上.

这个功能可以使用Event Receiver来做到.

 

进一步的问题

===========
如果你使用ItemAdded, 你会发现你的HttpContext.Current对象是null.

ItemAdded和ItemUpdated属于异步(asynchronous )事件, 而HttpContext对象仅在同步(synchronous )事件中才可获取.

 

那我们就应该使用ItemAdding了. 可是还有一个问题, 如果你使用ItemAdding事件的话, 你会发现如果执行了跳转, 你的item并不会被加入到列表中!

这是因为, 一旦执行了跳转, 那么ItemAdding的线程就会被终止, item也就永远不会添加到list中了.

解决方案有点麻烦, 需要你手工地添加你的item, 即在ItemAdding事件中, 手动地拿到SPList对象, 然后执行SPList.Add()方法.

 

具体的解决方案, 请看这里.

 

Redirecting User on ItemAdding in SharePoint EventHanlders

http://www.bronios.com/index.php/2008/09/01/redirecting-user-on-itemadding-in-sharepoint-eventhanlders/

Redirecting from NewForm.aspx to DispForm.aspx after creating a new item

http://www.entwicklungsgedanken.de/2008/03/27/redirecting-from-newformaspx-to-dispformaspx-after-creating-a-new-item/

posted on   中道学友  阅读(347)  评论(0编辑  收藏  举报

编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律

导航

< 2010年4月 >
28 29 30 31 1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 1
2 3 4 5 6 7 8

技术追求准确,态度积极向上

点击右上角即可分享
微信分享提示