- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我的目标是将带有导入的嵌入式 xsd 加载到数据集中,然后基于 xsd 生成表。
我正在尝试使用由导入的多个 XSD 文件组成的 XML 架构加载数据集。对文件系统上的文件执行此操作没有问题,我只需将主 xsd 文件交给它,一切都可以正常加载,所有 xsd 导入都已解决。我想做的是将我的 xsd 嵌入到我的 dll 中,这样它就不会坐在文件系统上。具有嵌入式 xsd 文件的项目与将访问 xsd 文件以加载到数据集中的项目是分开的。
DataSet.ReadXmlSchema 方法可以采用流、XmlReader、字符串 uri 或 XmlTextReader。我可以毫无问题地加载 dll,然后使用 assembly.GetManifestResourceStream(schemaPath) 访问主模式文件,如果我的模式只是一个文件,这会很好。问题是,一旦我将其传递给 DataSet.ReadXmlSchema 方法,它就无法找到任何导入。
我尝试使用 XmlReader 并将 XmlReaderSettings 对象与我为之前的问题编写的自定义 xml 解析器一起使用(我知道可行)。我过去曾使用自定义 xml 解析器将嵌入到 dll 中的类似模式加载到 XmlSchemaSet 中,它的工作原理非常棒。因此,当我进行 XmlReader.Create 调用时,我传入了使用自定义 Xml 解析器的 XmlReaderSettings,但是当我将此 XmlReader 传递给 DataSet.ReadXmlSchema 方法时,它也找不到导入的架构文件。我在重载的 GetEntity 方法中设置了一个断点,它永远不会被击中。所以 XmlReader 似乎没有使用我提供的 XmlResolver。我对 XmlTextReader 也有同样的问题。
关于如何将带有导入的嵌入式模式加载到 DataSet 中,有什么想法吗?我最后的办法是将嵌入的 xsd 文件临时复制到文件系统以创建数据集,然后删除它们,尽管我试图避免这种情况。
最佳答案
很遗憾,不可以,无法从作为资源嵌入的多个 XSD 加载数据集。
理由在 DataSet 类的这个方法中:
internal void ReadXSDSchema(XmlReader reader, bool denyResolving)
代码在那里的编写方式,它利用了 XmlSchemaSet ;它使用您传递的阅读器 (XmlReader) 加载架构,将其添加到 XmlSchemaSet 并编译。
不幸的是,要在使用嵌入式资源时编译 XmlSchemaSet,必须为 XmlSchemaSet 对象提供一个 xml 解析器!...问题是,没有一个可以在那个时候使用过程中的点。虽然可以使用解析器配置读取器设置,但如您所知,它是只写的(没有 getter)。
要测试我所说的内容,请尝试从相同的嵌入式资源加载 XmlSchemaSet;您会注意到,无论您尝试什么,解析器都必须设置在 XmlSchemaset 级别,而不是 XmlReader 级别。
我建议你看一下异常堆栈,然后用Reflector之类的看代码。如果您得出不同的结论,请分享。
关于c# - 通过导入将嵌入式 XSD 加载到数据集中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9724043/
我想做一个系统,用户可以上传和下载文件。系统将具有一个集中的地形,但在很大程度上依赖于节点将相关数据通过中心节点传输给其他节点我不希望对等端保存整个文件,而是希望它们保存整个数据集的一个压缩的加密部分
我正在 Riverpod Auth 流程样板应用程序中工作。 我想对所有异步功能甚至登录和注销使用通用加载屏幕。目前,如果 Appstate 加载我显示加载屏幕,我有 AppState 提供程序。它可
我有一个 functions.php 文件,其中包括以下功能: function head() { global $brand, $brandName, $logo, $slogan, $si
我有下一个 html 代码 ... 我想选择随机的 div 数组来向它们添加一个事件类,因为我使用这个 jquery 代码 function randOrder() { return
多年来,我创建并调整了一组NAnt脚本以执行完整的项目构建。主脚本采用一个应用程序端点(例如,一个Web应用程序项目),并从源代码控制中对其进行完整的构建。脚本已预先配置了与构建输出位置,源代码控制地
我希望我的 jQuery 插件在 $(window) 选择上调用时表现不同。如何检查 window 是否在集合中?到目前为止我的尝试: >>> $(window) == $(window) false
考虑到我们有 let existingSet = $(); 如何通过 jQuery 将 newElements 添加到该集合中? existingSet = existingSet.add(newEl
我需要在 priority_queue 中保存一个整数集合。但是我需要能够删除这些整数中的一个,即使它不是我容器的第一个元素。我无法使用 std::priority_queue。我选择使用一个集合来根
对于我的网站,我一直在尝试集中所有内容以便在移动设备上显示: http://m.bachatdeals.com 我在移动设备上打开网站后,内容下方有很多空间,我必须捏住 zoon 才能阅读,如何删除下
我计划为我的剑道验证器制定一些自定义规则,并希望在所有验证器之间共享。在我的验证器代码中,我有: rules: { bothorblank: function (input) {
这是我的函数,用于测试两个点 x 和 y 在 MAX_ITERATION 255 之后是否在 mandelbrot 集合中。如果不在,它应该返回 0,如果在,则返回 1。 int isMandelbr
致力于从移动设备扩展到桌面设备的简单网站布局。一切都按预期工作,但由于某种原因,我的 float div 没有集中放置。我已经完成了正常工作,但这次不适合我?有什么想法吗? 这是我的 CSS: /*
我的“div”元素有一个相对宽度,它不是绝对的,所以我不能使用精确的数字来集中。一个不错的解决方案是使用“display: inline-block”: body { text-align:
目前我拥有的所有类都处理它们自己的导入。使用一个典型的例子: [ImportMany] private Lazy[] someOfMyInterfaces { get; set; } public M
我有一个类定义: class Question: title = "" answer = "" def __init__(self, title, answer):
我正在尝试将一个对象 Point2D 插入到一个 Point2D 集合中,但我做不到,似乎该集合适用于 int 和 char 但不适用于对象。 我需要帮助来了解如何将对象插入到集合中???假设我想按
我的应用上有一些弹出窗口,它是全屏的,代码如下: content.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,
我们有一个多模块 Quarkus 项目,带有一个公共(public)库和多个应用程序。在通用的 lib 中,我们有各种缓存用于所有应用。 我们希望不必在每个应用程序的所有配置文件中配置保留和容量。 有
这个问题在这里已经有了答案: Nested facets in ggplot2 spanning groups (2 个回答) 去年关闭。 我在 ggplot 中创建了一个图表里面有两个变量 face
我无法集中v-radio-group。这是我得到的:
我是一名优秀的程序员,十分优秀!