C# 中Tostring()时提示未将对象引用到对象的实例?
如图下,wp.begindate不为空,a正常赋值,然后result里面,到wp.begindate.tostring()就提示未将对象引用到对象的实例了。这个wp.be...
如图下,wp.begindate不为空,a 正常赋值,然后result里面,到wp.begindate.tostring()就提示未将对象引用到对象的实例了。
这个wp.begindate是object类型的,不是datetime类型的,因为我这里要返回的是一个时间格式,不是时间戳,所以要把begindate转化为string类型,但是tostring之后,就提示未将对象引用到对象的实例,不加tostring就返回了时间戳 展开
这个wp.begindate是object类型的,不是datetime类型的,因为我这里要返回的是一个时间格式,不是时间戳,所以要把begindate转化为string类型,但是tostring之后,就提示未将对象引用到对象的实例,不加tostring就返回了时间戳 展开
3个回答
展开全部
唉,好象没人能理解你是啥意思啊。
ToString()其实是一个object下的一个方法,换句话来说,只要是继承于object的都会继承这个方法,但是要想实现具体的内容,还是要子类具体的方法实现,一般用来表示转换成String。但是有两种情况我们要注意,第一种,wp可能是一个结构,特殊的结果是没有ToString()方法的,不是说不能执行,而是Converter相关转换中没有实现对应的类型。比如int等,他们就是有Converter之类的实现转换。另一种情况是,我们不希望或使用ToString()方法,所以实现时对这个继承而来的方法来了个自定义例外,换句话来说,我实现这个结构或类的ToString()方法时,在其中只写了一个throw new System.NullReferenException();语句,只要你执行Tostring()就是报这个错误。
所以我的意思是,你自己去看一下你wp类的函数是否有类似ToString()之类的定义或其定义的具体内容。
而且——beginDate = wp.BeginDate?.DateFormat()
这样不是更好?为什么要跟ToString()干上了呢?或者(wp.BeginDate as DateTime)?.ToString()不也可以吗?另外,ToString()也是这种时间格式的!除非你愿意写成ticket的值。
注: ?.ToString()的写法是.net framework 4.5.2+的写法。 其实就是 wp.BeginDate==null?null:wp.BeginDate.ToString()的语法糖。
ToString()其实是一个object下的一个方法,换句话来说,只要是继承于object的都会继承这个方法,但是要想实现具体的内容,还是要子类具体的方法实现,一般用来表示转换成String。但是有两种情况我们要注意,第一种,wp可能是一个结构,特殊的结果是没有ToString()方法的,不是说不能执行,而是Converter相关转换中没有实现对应的类型。比如int等,他们就是有Converter之类的实现转换。另一种情况是,我们不希望或使用ToString()方法,所以实现时对这个继承而来的方法来了个自定义例外,换句话来说,我实现这个结构或类的ToString()方法时,在其中只写了一个throw new System.NullReferenException();语句,只要你执行Tostring()就是报这个错误。
所以我的意思是,你自己去看一下你wp类的函数是否有类似ToString()之类的定义或其定义的具体内容。
而且——beginDate = wp.BeginDate?.DateFormat()
这样不是更好?为什么要跟ToString()干上了呢?或者(wp.BeginDate as DateTime)?.ToString()不也可以吗?另外,ToString()也是这种时间格式的!除非你愿意写成ticket的值。
注: ?.ToString()的写法是.net framework 4.5.2+的写法。 其实就是 wp.BeginDate==null?null:wp.BeginDate.ToString()的语法糖。
展开全部
string zf = Convert.ToString(textBox1.Text); 置于这里为什么错误,是因为你在初始化时前,textbox1.text 为null,所以会引发错误 改为: public Form1() { InitializeComponent(); //这句要放在其他语句的上面,因为此语句是初始化控件的必须语句,否则textbox1将在创建前被调用,也会引发错误。(你的语句属于双重错误) if (zf != "") { string zf = Convert.ToString(textBox1.Text); ///这里不用转换也可以,text本身就是string label2.Text = "\"" + zf + "\"长度为" + zf.Length.ToString(); //zf.Length为整数,要转化为string类型 } }
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2018-10-28 · 知道合伙人互联网行家
关注
展开全部
Tag在没有赋值的情况下是null, 不能使用ToString() 方法
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询