首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SqlXml,我不能在错误的xml上抛出异常。

SqlXml,我不能在错误的xml上抛出异常。
EN

Stack Overflow用户
提问于 2017-09-04 13:53:56
回答 1查看 45关注 0票数 0

我写了这段代码:

代码语言:javascript
复制
SqlXml s = new SqlXml(new MemoryStream(new UnicodeEncoding().GetBytes("asd")));

但是为什么它不给我任何exception...why呢?

如果我试着:

代码语言:javascript
复制
SqlXml s = new SqlXml(new MemoryStream(new UnicodeEncoding().GetBytes("asd")));
String g=s.Value;

我在价值分配方面有例外。我哪里错了?

提前感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-09-09 13:16:49

因为简单地调用构造函数不会对这种类型的流(请参阅代码)做任何事情。只有当您对实例“做一些事情”时,它才会实际尝试读取数据/流,如果顺序正确,则抛出异常。

价值-property就是这样一个东西,它将导致实际读取传递的流。还有其他的,检查文档

因此,如果您真的想使用这个类来检查流是否包含有效的XML,那么就像您已经做的那样做。调用SqlXml.Value属性(可能会将其赋值给字符串以获得良好的度量,即使您不使用它)。如果它抛出,则XML是无效的--正如您已经观察到的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46038551

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档