Tag: xml

使用XmlSerializer反序列化随机/未知类型

我正在使用XmlSerializer与服务进行通信。 这不是常规的SOAP服务,它有自己的XML对象类型。 例如,我可能会要求对象,但它可能会返回 。 所以,换句话说,我必须处理随机的XML文档类型。 但是,我知道我必须处理哪些类型。 我想要做的是找到一个通用的方法来序列化/反序列化这些文档。 问题是XmlSerializer需要在创建阶段知道类型。 这些不是封装在公共根元素中,因此在这种情况下,创建基类并使用[XmlInclude]属性不起作用: [XmlInclude(typeof(Exception))] [XmlInclude(typeof(Capabilities))] public abstract class BaseClass { public BaseClass() { SchemaLocation = “test”; } [XmlAttribute(“schemaLocation”)] public String SchemaLocation { get; set; } } [XmlRoot(“Exception”)] public class Exception : BaseClass { public Exception():base() { } [XmlElement] public String Message { set; get; } } [XmlRoot(“Capabilities”)] public class […]

将任何XML文档绑定到WPF TreeView

我想使用TypeConverter将任何XML文档绑定到WPF TreeView。 我最初的解决方案是使用递归,但是当文档很大时,UI被严重束缚。 以下链接讨论了TypeConverter,但针对特定的节点/元素组合: http : //social.msdn.microsoft.com/Forums/en-US/wpf/thread/edd843b7-b378-4c2d-926f-c053dbd7b340 如果不知道XML文档是什么样的,该怎么办? 由于这仅用于显示目的,因此我不太关心function,我只想将XML绑定到TreeView。

更改XML序列化的XmlElement名称

我们有以下代码: [Serializable] public class Class1 { [XmlElement(“description”)] public string Description { get; set; } } class Program { static void Main(string[] args) { var list = new List {new Class1() {Description = “Desc1”}, new Class1() {Description = “Desc2”}}; var serializer = new XmlSerializer(typeof(List), new XmlRootAttribute(“root”)); var ms = new MemoryStream(); serializer.Serialize(ms, list); ms.Position = 0; […]

如何将C#类转换为XMLElement或XMLDocument

我有一个C#类,我想使用XMLSerializer序列化。 但是我希望将它序列化为XMLElement或XMLDocument。 这是可能的还是我必须将它序列化为String,然后将字符串解析回XMLDocument?

XmlDocument.Save()在doctype声明中插入空方括号

每次我打电话给方法 XmlDocument.Save(fooFilepath); 它在DOCTYPE标签的末尾插入两个方括号,例如 有谁知道为什么会这样? 我显然不希望这种情况发生。

XDocument通过其name属性的值获取XML元素

我有这样的XML结果 0 16 firstname1 6557 Manager surname1 firstname2 6203 Director surname2 我想获得一个对象列表,每个对象都包含ContaFirstname , ContaId , ContaJobTitle和ContaSurname 我试过这样的东西,但那不对,因为我把它们全部都搞定了 var test = from c in xml.Descendants(“doc”) select new { firstname = c.Element(“ContaFirstname”), surnmane = c.Element(“ContaSurname”) }; 那么如何通过名称访问这些元素?

如何为我的DLL创建XML Intellisense文件?

我正在使用VS 2010在C#中创建DLL,并且我已经为其所有成员创建了XML注释。 当我构建DLL时,如何生成将为DLL提供Intellisense的XML文件? 谢谢你的帮助。

可以使用XmlWriter将XML写入内存吗?

我正在创建一个返回XML的ASHX,但是当我这样做时它需要一条路径 XmlWriter writer = XmlWriter.Create(returnXML, settings) 但是returnXML现在只是一个空字符串(猜测它不起作用),但是我需要将XML编写成我可以作为响应文本发送的东西。 我尝试了XmlDocument,但它给了我一个错误,期待一个字符串。 我在这里想念的是什么?

c#从字节数组创建xml

我有xml我得到的字节数组,是什么最好的方法来获取xml字符串? 我尝试使用xmltextreader和memorystream但没有成功..

Log4Net自定义appender:如何记录使用Custom appender写入的消息?

问题解决了 – 我用正确的代码编辑这篇文章。 我正在尝试编写“main”函数,初始化log4net记录器+自定义appender附件并发送消息认为它 – 这是我的尝试(没有成功,不幸) 我的初始化有什么问题(下面的Form1.cs)? namespace WindowsFormsApplication1 { public partial class Form1 : Form { ILog log = LogManager.GetLogger(typeof(Form1)); public Form1() { log4net.Config.XmlConfigurator.Configure(); InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { log.Info(“Creating log”); } } 错误消息-Exception = {“无法加载文件或程序集’MessageBoxAppender’或其依赖项之一。系统找不到指定的文件。”:“MessageBoxAppender”} [IMG] http://sofzh.miximages.com/c%23/qrjcjc .png [/ IMG] 我尝试使用此自定义appender代码从下面的链接编写日志消息 Writing An Appender For log4net 我的目标是单击一个按钮,日志消息将写入自定义appender。 我有3个文件/类。 1.Form1.cs […]