昨晚碰到两个相当妖的问题,当然这个问题对于懂的人来说也许根本不妖,虽然最后解决了,但不知道真正原因。
第一个问题是:
当时想通过一个xml文件来生成一个数据集dataset,一直没注意在xml各节点中添加的也都是普通的字符串。
有一天想着把一些html的标记符也加入进去,比如<;之类的,却发现dataset死活无法读取了。
很是不解,后来尝试着在xml头标记中加入了standalone属性 <?xml version="1.0" encoding="utf-8" standalone="yes" ?>
成功的读到了dataset中。
看网上各种资料。据说standalone默认属性既不是yes也不是no,而是""。而standalone的介绍也仅仅是说是否文档需要加载外部文件。
一般来说,<等常见的网页标记应该是xml预定的实体中已经定义过了,没有理由需要使用DTD去单独进行定义,那么为什么默认的xml文件就无法通过dataset来正常读取呢?
这个原因却不是一时半会能搞明白了。
第二个问题:
看简单代码 viewstate["index"] = index.tostring(),如果我是这样给viewstate["index"]赋值了,那么index=(int)Viewstate["index"]就会出错,而如果我是viewstate["index"]=Int32.Parse(index.tostring()),那么后一次取值就是可以的。
那么这里很奇怪,为什么前一种是不可以的呢?