背景
我目前正在完成我的论文,需要一些关于我正在编写的程序的帮助。我的目标是快速了解一个程序,它可以连接到 PostgreSQL 数据库,检索所需的数据,然后使用它创建一个文件,描述如何在 GIS 套件或 WebMapServer(或类似服务器)中显示指定的数据)。
现在我对 C# 非常熟悉,并且已经使用了几年,但是从未真正深入研究过使用它来存储 XML 中的数据,甚至在我的解决方案中通常使用 XML 文件,因此对 C# 没有太多经验XML 类。
现在,快速指出 SLD (StyledLayerDescriptor) 文件本质上只是 XML 文档。
问题
我无法使用 C#重新创建它。我遇到的主要问题是找出如何使用 XmlWriter 类在每个子元素的开头没有 xmlns="..." 的每个元素名称之前重新创建“se:”前缀,还有长字符串顶部的命名空间声明,尽管看似未使用。
这是我迄今为止能够生产的。
编辑:
我还可以生成带有前缀和命名空间声明的每个子元素,如文档顶部的“StyledLayerDescriptor”所示。
如果需要,我可以发布我的任何 XmlWriter 代码,要么这真的很简单,我错过了一些东西,要么很难重新创建,因为我现在一直在寻找答案。我已经阅读了我认为“在 C#.Net 2008 中开始 XML”的相关章节,并且仍在努力重新创建文件。
任何帮助或指导将不胜感激,因为它让我坚持了一段时间,而且在我现在修复之前,我无法真正继续编程。
还要指出的是,我觉得在每个元素之前获得前缀 se: 对我来说具有更高的优先级,尽管如果父名称声明为 se:,在这种情况下,您需要为其子元素添加“StyledLayerDescriptor”吗?不必要?
干杯
伯爵