首页 > ItemAdding实现数据验证--中文字段,properties.AfterProperties值为null的问题

ItemAdding实现数据验证--中文字段,properties.AfterProperties值为null的问题

最近写事件接收器,发现中文字段如果直接用properties.AfterProperties[“申请人"]这样获取的值为null,无法得到值。后拉忽然发现用英文字段可以得到值。难道中文字段需要编码?经过测试果真如此。

代码部分如下:

public override void ItemAdding(SPItemEventProperties properties)
{base.ItemAdding(properties);//得到站点SPWeb web = properties.OpenWeb();//如果web不为空if (web != null){//得到列表SPList list = web.Lists[properties.ListId];//如果列表不为空if (list != null){//得到字段string fieldName = list.Fields.GetField(WorkLeaveConfig.WorkLeave_Title).InternalName;//得到值string WorkTitle = properties.AfterProperties[fieldName] == null ? string.Empty : properties.AfterProperties[fieldName].ToString();//得到值if (WorkTitle.IndexOf("测试") >= 0){properties.ErrorMessage = "无法请假!";properties.Cancel = true;}}}}
效果图如下:

转载于:https://www.cnblogs.com/love007/archive/2012/04/26/2471261.html

更多相关:

  • 在使用空时,习惯这么赋值  int *p = NULL;  编译器进行解释程序时,NULL会被直接解释成0,所以这里的参数根本就不是大家所想的NULL,参数已经被编译器偷偷换成了0,0是整数。  因此这面的问题就尴尬了 不好意思图片引用于网络中。 为啥呢不是this is the ptr function…这个。这就是C++中的...

  • var d= {a: 1,b: null,c: 3,d: undefined };Object.keys(d).forEach(k=>d[k]==null&&delete d[k]);//去掉值为null或undefined的对象属性//Object.keys(d).forEach(k=>(d[k]==null||d[k]==='')...

  • //ES6获取浏览器url跟参 public getUrlParam = a => (a = location.search.substr(1).match(new RegExp(`(^|&)${a}=([^&]*)(&|$)`)),a?a[2]:null);...

  • 文章目录1. 解决问题2. 应用场景3. 实现如下C++实现C语言实现4. 缺点 1. 解决问题 在简单工厂模式中,我们使用卖衣服进行举例,同一种工厂可以卖很多不同种类的衣服,工厂只是将衣服的生产过程进行了封装。 当我们增加衣服种类的时候,在简单工厂模式中需要修改工厂的代码,破坏了类的开闭原则(对扩展开发, 对修改关闭),...

  • 在服务端数据库的处理当中,涉及中文字符的结构体字段,需要转为Utf8后再存储到表项中。从数据库中取出包含中文字符的字段后,如果需要保存到char *类型的结构体成员中,需要转为Ansi后再保存。从数据库中取出类型数字的字段后,如果需要保存到int型的结构体成员中,需要调用atoi函数进行处理后再保存。 1 static char *...

  • Math.max(...arr);//返回数组最大值 Math.min(...arr);//返回数组最小值Math.max(...objArr.map(o => o.最值字段名));//返回对象数组最大值 Math.min(...objArr.map(o => o.最值字段名));//返回对象数组最小值objArr.sort((pre...

  • 有关函数的官方文档:https://onlinehelp.tableau.com/current/pro/desktop/zh-cn/functions_functions_string.htm 注意事项: 1.记录数:是Tableau自动给每行观测值赋值为1。 2.维度的字段,是不能用于计算的,若是要用于计算,则需要转成度量。 3...

  • 1:删除   连接数据库:新建连接数据库,或者应用转换中已经定义好的数据库。 目标模式:指什么现在还不明确,集群模式?子服务器模式?--要写入数据的表的Schema名称。允许表名中包含“.”是很重要的。  目标表:指定删除记录所对应的表。   提交记录数量:提交之前要改变(删除)的行数   表字段:来源于目标表中的字段。   流字段:...

  • 前言: 前面两篇都是大体介绍流程,有一些配置细节,没有细说,这里用一篇补上。 1、Excel配置项 起始行索引、列头跨行数: 对于自定义的Excel导入模板(有时候模板是由客户提供,模板的规则很乱)比如模板里前面是一些说明,中间是列头,下面还带有数据和说明格式。通过配置起始行索引,以及列头跨行数(0或1都代表一行),则可以解决此类...

  • 1.查询频繁 2.区分度高 例如:数据库表字段:sex 存储:男女,区分度就不高。 3.长度小 索引的长度直接影响索引文件的大小,影响增删改的速度,并间接影响查询速度。 4.尽可能覆盖常用字段   转载于:https://www.cnblogs.com/mingliangzhu/p/6972045.html...