场景:

使用SharePoint的调查列表做调查问卷的时候,我们经常要设置成不允许多次答复,这样的话每个人就只能答复一次。

问题:

可是这样会产生一个问题,就是如果一个人第二次答复的话,那么出现的错误提示页面(如下图)不是很友好。

尝试的解决方案:

如果熟悉SharePoint 2010的开发的话,那么可定会想到Event Handler这个解决方案。因为在2010中,可是实现使用Event Handler实现自定义错误页面。有了这个方案,那么接下来就是一些细节性的问题了。

1.首先查询当前用户是否在列表中回复过帖子;

2.如果回复过,那么就跳到自定义页面。

代码:

  public override void ItemAdding(SPItemEventProperties properties){SPList currentList = properties.List;SPQuery query = new SPQuery();query.Query = "<Where><Eq><FieldRef Name='Author'/><Value Type='Integer'><UserID Type='Integer'/></Value></Eq></Where>";SPListItemCollection items = currentList.GetItems(query);if (items.Count == 1){properties.Cancel = true;properties.Status = SPEventReceiverStatus.CancelWithRedirectUrl;properties.RedirectUrl = "/_Layouts/MyEventError.aspx";}          }

疑问:

当你代码完成后,并且成功部署,去没有结果。也就是说如果重复答复调查,依然会跳到默认的错误页面。问题出现在哪里?个人猜测是默认错误页面实现机理和Event Handler不一样,通俗一点就是:他们不是一个道上的。怎么办?难道没有办法了。有,但只能说是Workaround, 不是真正的解决方案。

解决方案:

首先把调查列表设置成“允许多次答复”,然后激活你的Event Handler的feature。ok,自定义的错误页面实现了。

为什么说是一种折中的方案呢?因为错误页面发生在用户完成调查的表单,并且提交表单的过程中,而不是发生在用户点击“答复此调查”的过程中。

努力不一定成功,但放弃一定失败!

http://www.cnblogs.com/fanwenxuan/archive/2010/09/18/1830320.html

转载于:https://www.cnblogs.com/Areas/archive/2011/12/06/2278424.html

SharePoint 调查列表的自定义错误页面相关推荐

  1. react 错误边界_React with GraphQL和错误边界中的自定义错误页面

    react 错误边界 by Abi Noda 通过Abi Noda React with GraphQL和错误边界中的自定义错误页面 (Custom error pages in React with ...

  2. SpringBoot自定义错误页面

    Spring Boot以一种新的微服务的方式来替代以Spring Framework构建项目的传统方式,我已经计划在后续的项目开发中使用它.它已经帮我们做了90%的工作,剩下10%的工作需要我们自己去 ...

  3. ASP.NET自定义错误页面(转)

    ASP.NET自定义错误页面(转) ASP.NET 提供三种用于在出现错误时捕获和响应错误的主要方法:Page_Error 事件.Application_Error 事件以及应用程序配置文件 (Web ...

  4. 017_SpringBoot异常处理方式-自定义错误页面

    1. 使用maven构建SpringBoot的名叫spring-boot-exception1项目 2. pom.xml <project xmlns="http://maven.ap ...

  5. ASP.NET Core中显示自定义错误页面-增强版

    之前的博文 ASP.NET Core中显示自定义错误页面 中的方法是在项目中硬编码实现的,当有多个项目时,就会造成不同项目之间的重复代码,不可取. 在这篇博文中改用middleware实现,并且放在独 ...

  6. SpringBoot异常处理-自定义错误页面

    自定义错误页面 SpringBoot 默认的处理异常的机制:SpringBoot 默认的已经提供了一套处理异常的机制. 一旦程序中出现了异常SpringBoot 会像/error 的url 发送请求. ...

  7. Spring Boot自定义错误页面

    Spring Boot以一种新的微服务的方式来替代以Spring Framework构建项目的传统方式,我已经计划在后续的项目开发中使用它.它已经帮我们做了90%的工作,剩下10%的工作需要我们自己去 ...

  8. apache 设置404 页面_SpringBoot自定义错误页面

    SpringBoot请求错误如404可能看到如下页面: 有时可能需要自定义错误页面针对不同的http.status,如404/400. [1]解决方法 ① 注册错误页面 如下所示: @Componen ...

  9. HOW-TO:带有Spring MVC的Tomcat中的自定义错误页面

    默认的Tomcat错误页面看起来很可怕. 此外,它们可能会公开有价值的信息,包括服务器版本和异常堆栈跟踪. Servlet规范提供了一种通过web.xml配置异常行为的方法. 可以配置对特定Java异 ...

最新文章

  1. 用gcc gvim编译程序
  2. python内置对象的实现_Python 内置对象的实现
  3. 分享18个常用的网站性能测试工具
  4. 在使用angular2中使用nodejs创建服务器,并成功获取参数
  5. qq2440 cs8900移植
  6. [转]C#与数据结构--树论--平衡二叉树(AVL Tree)
  7. mybatis使用时遇到的一些问题------模糊查询、处理大于号小于号、相关函数替换空值...
  8. 世界科学技术通史_全球科技通史
  9. 怎么在linux操作python_pythonlinux怎么操作
  10. Spring XD 1.0.0.M5在这里!
  11. Monthly Expense( POJ-3273 )
  12. Python 爬取分析全国 12 个城市 4 万条房价信息,告诉你该怎样买房?
  13. freeCodeCamp:Confirm the Ending
  14. 《Entity Framework 6 Recipes》中文翻译系列 (24) ------ 第五章 加载实体和导航属性之查询内存对象...
  15. jQuery weui 时间选择器datetimepicker只用年月日
  16. Java入门-Java执行语句
  17. access()函数、_access()函数
  18. Henry前端笔记之 函数封装
  19. bcedit双系统更改启动项名称_如何修复双系统启动项
  20. android:报Activity has leaked IntentReceiver或者receiver is not registered错误

热门文章

  1. 【计算机领域均可投稿,确保EI检索】移动通信·信息科学热门会议即将到来!更有限时优惠等你来领!...
  2. You Only Watch Once:实时人体动作定位网络
  3. 坐标北京,Paddle Lite​ 线下交流会,助力算法落地​
  4. 在Python3里有的变量前面有个*号,或许你不知道,没关系,看文
  5. 收藏 | PyTorch实现各种注意力机制
  6. 深入理解并发/并行,阻塞/非阻塞,同步/异步
  7. 深度学习(四十)优化求解系列(2)简单理解神经网络求解过程-未完待续
  8. 标签传播(阅读笔记)
  9. java httpclient 重定向_如何在HttpClient中自动重定向(java,apache)
  10. rpm安装与yum安装的区别与特点