首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >检查空后的System.NullReferenceException

检查空后的System.NullReferenceException
EN

Stack Overflow用户
提问于 2014-07-18 02:35:34
回答 1查看 456关注 0票数 0

我有一个简单的函数来记录在显示某些页面时可能发生的错误。我使用空合并操作符来确保我的string.Format中没有任何string.Format。

错误: System.NullReferenceException:对象引用没有设置为对象的实例。在ASP._core_showad_aspx.LogError(String sType,String sIP,Nullable1 id, Nullable1 id2)

代码语言:javascript
运行
AI代码解释
复制
void LogError(string sType, string sIP, int? id, int? id2)
{
    string error   =   string.Format("'{0}', '{1}', '{2}', '{3}', '{4}', '{5}', '{6}', '{7}', '{8}', '{9}', '{10}', '{11}'", 
    sType??"", sIP??"", id??-1, id2??-1, 
    Request.ServerVariables["HTTP_X_ORIGINAL_URL"]??"", Request.ServerVariables["URL"]??"", Request.ServerVariables["QUERY_STRING"]??"", 
    Request.Path??"", Request.ServerVariables["HTTP_REFERER"]??"", Request.ServerVariables["HTTP_USER_AGENT"]??"", 
    Request.ServerVariables["REMOTE_HOST"]??"", Request.ServerVariables["HTTP_COOKIE"].Substring(0, (Request.ServerVariables["HTTP_COOKIE"].Length>399)?399:Request.ServerVariables["HTTP_COOKIE"].Length)??"");

    WriteLog(error);
}

空合并操作符不应该阻止这种情况发生吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-18 02:37:34

您的Request.ServerVariables["HTTP_COOKIE"]不检查null。

试试这个:

代码语言:javascript
运行
AI代码解释
复制
string httpCookie = string.Empty;
if (Request.ServerVariables["HTTP_COOKIE"] != null)
{
   httpCookie = Request.ServerVariables["HTTP_COOKIE"].Substring(0, (Request.ServerVariables["HTTP_COOKIE"].Length>399)?399:Request.ServerVariables["HTTP_COOKIE"].Length)
}
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24823007

复制
相关文章
oracle--约束(主键、非空、检查)
使用外键约束 --(1)、在字段后使用 references 参照表表名(参照字段) --(2)、在所有字段后使用 constraints fk_表名_字段名 foreign key(字段名) references 参照表名(参照字段名) --(3)、在创建表后使用alter table 表名 add constraints fk_表名_字段名 foreign key(字段名) references 参照表名(参照字段名) --删除外键 alter table 表名 drop constraints fk_表名_字段名
eadela
2019/09/29
2K0
PHP 类型判断和NULL,空值检查
 PHP是一种宽松类型的编程语言,在函数中对传入的参数值的“类型”以及”值是否为空或者NULL“进行检查是不可缺少的步骤。
lin_zone
2018/08/15
3.6K0
Confluence 6 升级完成后的检查
这个页面中的文章将会为 Confluence 管理员为 Confluence 升级完成后 提供检查列表以确保 Confluence 的升级顺利完成。这个检查列表没有包含所有需要检查的错误,但是将会检查会通常出现错误的地方。
HoneyMoose
2019/04/21
5060
如何检查 MySQL 中的列是否为空或 Null?
在MySQL数据库中,我们经常需要检查某个列是否为空或Null。空值表示该列没有被赋值,而Null表示该列的值是未知的或不存在的。在本文中,我们将讨论如何在MySQL中检查列是否为空或Null,并探讨不同的方法和案例。
网络技术联盟站
2023/07/14
2.3K0
如何检查 MySQL 中的列是否为空或 Null?
如何检查 MySQL 中的列是否为空或 Null?
在MySQL数据库中,我们经常需要检查某个列是否为空或Null。空值表示该列没有被赋值,而Null表示该列的值是未知的或不存在的。在本文中,我们将讨论如何在MySQL中检查列是否为空或Null,并探讨不同的方法和案例。
网络技术联盟站
2023/08/03
4.8K0
如何检查 MySQL 中的列是否为空或 Null?
Gitlab 创建空Project后的初始化问题
我们如果通过GitLab 创建了一个项目后。如果直接进行TortoiseGit进行操作。
zinyan.com
2022/12/07
4.9K0
如何检查一个对象是否为空
检查一个数组为空很容易,直接调用 length 方法即可,那么如何检查一个对象是否为空呢 ❓
JS菌
2019/04/10
4.2K0
如何检查一个对象是否为空
还在重复写空指针检查代码?考虑使用 Optional 吧!
如果要给 Java 所有异常弄个榜单,我会选择将 NullPointerException 放在榜首。这个异常潜伏在代码中,就像个遥控炸弹,不知道什么时候这个按钮会被突然按下(传入 null 对象)。
沉默王二
2019/11/12
1K0
还在重复写空指针检查代码?考虑使用 Optional 吧!
【TypeScript 演化史 -- 10】更好的空值检查 和 混合类
在TypeScript 2.2中,空检查得到了进一步的改进。TypeScript 现在将带有可空操作数的表达式标记为编译时错误。
前端小智@大迁世界
2022/06/15
2.9K0
【TypeScript 演化史 -- 10】更好的空值检查 和 混合类
还在重复写空指针检查代码?考虑使用 Optional 吧!
如果要给 Java 所有异常弄个榜单,我会选择将 NullPointerException 放在榜首。这个异常潜伏在代码中,就像个遥控炸弹,不知道什么时候这个按钮会被突然按下(传入 null 对象)。
纯洁的微笑
2019/11/07
1.3K0
还在重复写空指针检查代码?考虑使用 Optional 吧!
还在重复写空指针检查代码?考虑使用 Optional 吧!
如果要给 Java 所有异常弄个榜单,我会选择将 NullPointerException 放在榜首。这个异常潜伏在代码中,就像个遥控炸弹,不知道什么时候这个按钮会被突然按下(传入 null 对象)。
andyxh
2019/10/29
6420
还在重复写空指针检查代码?考虑使用 Optional 吧!
LeetCode 1003. 检查替换后的词是否有效(栈)
对于任何有效的字符串 V,我们可以将 V 分成两个部分 X 和 Y,使得 X + Y(X 与 Y 连接)等于 V。(X 或 Y 可以为空。)那么,X + “abc” + Y 也同样是有效的。
Michael阿明
2020/07/13
7760
LeetCode 1003. 检查替换后的词是否有效(栈)
空对象和空的对象
空对象:表面内部不包含任何属性和方法的对象,比如var obj={}就是一个空对象
十月梦想
2018/08/29
1.4K0
空与非空:浅谈非空约束的影响
黄玮(Fuyuncat) 资深Oracle DBA,个人网www.HelloDBA.com,致力于数据库底层技术的研究,其作品获得广大同行的高度评价. 非空约束是字段的一个重要属性。但是,很多时候,数据库表的设计人员似乎并不十分在意这个属性。最常见的现象就是,除了主键字段外,所有字段都不指定该属性。而在Oracle中,默认是允许为空。 而实际上,优化器在选择执行计划时,非空约束是一个重要的影响因素。为了说明问题,我们建立以下测试表,然后分别说明非空约束在各种情况下对执行计划和性能的影响。 谓词评
数据和云
2018/03/06
3.4K0
空与非空:浅谈非空约束的影响
​JDK1.8 新特性 (八):还在重复写空指针检查代码?​
作为一名Java程序员,无论是初入茅庐的菜鸟,还是久经江湖的高手,曾经肯定遭遇过各种各样的异常错误。在国外的一篇文章中,就统计了关于异常类型的排行榜,如下图:
xcbeyond
2020/08/22
1.6K0
刷新页面后this.$route.params 为空
深入学习 vue-router时,按官方文档的教程看下来,结果发现刷新页面后,打印的this.$route.params 为空
赤蓝紫
2023/01/05
1K0
刷新页面后this.$route.params 为空
【TypeScript 演化史 — 第十章】更好的空值检查 和 混合类
在TypeScript 2.2中,空检查得到了进一步的改进。TypeScript 现在将带有可空操作数的表达式标记为编译时错误。
Javanx
2020/05/09
2.7K0
【TypeScript 演化史 — 第十章】更好的空值检查 和 混合类
JavaScript 判断空对象、空数组的方法
从表格中,我们可以看出想要判断是不是null, undefined , "", 0,都比较容易, 非操作 和 比较操作 都能实现。就是{}, []比较顽固,两种方法都无效。
celineWong7
2020/11/05
30.2K0
Bucket不为空,请检查该Bucket是否包含未删除的Object或者未成功的Multipart碎片
异常处理汇总 ~ 修正果带着你的Net飞奔吧!http://www.cnblogs.com/dunitian/p/4599258.html 图示解决==>详细如下:
逸鹏
2018/04/09
1.6K0
Bucket不为空,请检查该Bucket是否包含未删除的Object或者未成功的Multipart碎片
EasyDSS集群转码搭建后如何检查服务是否正常运行?
EasyDSS转码集群搭建后需要保证每台服务器都在正常运行,可以通过进 etcd-v3.5.0-linux-amd64 目录运行 ./etcdctl get / --prefix --keys-only 来检查服务是否正常:
TSINGSEE青犀视频
2021/12/29
1.3K0

相似问题

检查system.nullreferenceexception

25

ReSharper警告可能的System.NullReferenceException,尽管有隐式空检查

20

空传播System.NullReferenceException等待

33

空检查后抛出的空错误?

211

空检查后可能的空引用

14
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档