当前位置:编程学习 > C#/ASP.NET >>

object转换ToString()报错

if (!ConnectRemoteServer("127.0.0.1", "KEPware.KEPServerEx.V4"))
                {
                    return;
                }

                if (!CreateGroup("test"))
                {
                    return;
                }
                myItem = myItems.AddItem("Channel_0_User_Defined.Random.Random1", 1234);
                Object ItemValues=new object(); object Qualities; object TimeStamps;
                myItem.Read(1, out ItemValues, out Qualities, out TimeStamps);
                if (LocalServer != null)
                {
                    LocalServer.Disconnect();
                }
                
                MessageBox.Show(ItemValues.ToString());


报初始化错误,未将对象引用设置到对象的实例
但在调试状态下就不用错误
直接运行就错误,很奇怪
望高人指点 --------------------编程问答-------------------- myItem.Read方法返回的ItemValues为null --------------------编程问答-------------------- 没错,结果返回空值,你先判断是否为空?再ToString()就明白了

--------------------编程问答-------------------- MessageBox.Show(ItemValues==null?"空的": ItemValues.ToString()); --------------------编程问答-------------------- 很明显,null不能转换。 --------------------编程问答-------------------- MessageBox.Show(ItemValues.ToString());
=>
MessageBox.Show(ItemValues==null?ItemValues:ItemValues.ToString()); --------------------编程问答-------------------- 你应该去检查myItem.Read(1, out ItemValues, out Qualities, out TimeStamps);这方法为什么ItemValues为null --------------------编程问答--------------------
引用 6 楼 Chinajiyong 的回复:
你应该去检查myItem.Read(1, out ItemValues, out Qualities, out TimeStamps);这方法为什么ItemValues为null

再做一个容错判断
ItemValues==null?"未返回值":ItemValues.ToString(); --------------------编程问答-------------------- 逻辑处理问题 --------------------编程问答-------------------- 先判定一些是否为空
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,