您的位置:程序门 -> 移动平台 -> windows mobile



在ppc程序里可以xml反序列化,到了商务机上就报xml文档(1,1)处有错误


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


在ppc程序里可以xml反序列化,到了商务机上就报xml文档(1,1)处有错误
发表于:2007-04-09 09:12:23 楼主
代码很简单:
  xmlserializer   serializer   =   new   xmlserializer(typeof(myobject1));
                              memorystream   mem   =   new   memorystream((byte[])cawsdataset.tables[ "myfile "].rows[rowselected][ "文件 "]);
                              myobject1   obj1   =   (myobject1)serializer.deserialize(mem);//此行出错,invalidoperation,xml文档(1,1)处有错误

myobject1的代码如下:

public     class   myobject1
        {
              public   graphicattri   []   graphitems;//graphicattri为自定义的一个类
              public   int   graphno;
                public   myobject1   ()
                {
                }
        }
后来通过innerexception发现是根级别的数据无效,下面是序列化的xml文档的头几行(因为我觉得既然是根级别数据无效i,肯定就是开头的那些参数问题):  

xml文档为: 

<?xml   version= "1.0 "   encoding= "utf-8 "?>  

<myobject1   xmlns:xsi= "http://www.w3.org/2001/xmlschema-instance "  

  xmlns:xsd= "http://www.w3.org/2001/xmlschema ">  

......  

请问根级别的数据,位置为行1列1的是哪个?
还要说明的是:我就直接引用pda里的用来序列化的类(myobject1),然后在pc机上的程序里using   了一下。  
发表于:2007-04-09 16:48:271楼 得分:0
不知道在pda上的xml序列化的文件传到服务器(pc机)后是用什么方法转回来的,pda上不支持二进制序列化的,但是在pda上可以xml反序列化的,到pc机上就不行了,所谓“根级别数据无效”,也就是myobject1它认为是无效的根参数,那么怎么改呢   ,我迷茫了。。。。。
发表于:2007-04-10 12:30:122楼 得分:0
后来做了个实验,将xml序列化生成的文件存在pda的我的文档里,然后自己再从pda里拷到pc机上,然后将该文件xml反序列化成相应的对象myobject1,成功,这基本说明xml文档没问题。
发表于:2007-04-27 17:25:183楼 得分:0
是不是读xml的方法用错了.一个是load(),一个是loadxml()


快速检索

最新资讯
热门点击