草庐IT

GMap-NET-Great-Maps-for-Windows-F

全部标签

c# - Log4Net 自定义附加程序 : How to log messages using a custom appender?

问题已解决-我用正确的代码编辑了这篇文章。我正在尝试编写初始化log4net记录器+附件到自定义附加程序并发送消息的“主要”函数-这是我的尝试(不幸的是没有成功)我的初始化(下面的Form1.cs)有什么问题?namespaceWindowsFormsApplication1{publicpartialclassForm1:Form{ILoglog=LogManager.GetLogger(typeof(Form1));publicForm1(){log4net.Config.XmlConfigurator.Configure();InitializeComponent();}priv

SQL Server - 包含 FOR XML 要求的无效 XML 标识符;

我正在运行此查询并遇到下面提到的错误。谁能帮忙?Columnname'MiddleName'containsaninvalidXMLidentifierasrequiredbyFORXML;''(0x0020)isthefirstcharacteratfault.SELECTUsernameas[LastName],''AS[MiddleName],''ASBirthdate,''AS[SSN],0AS[WageAmount]FROMEmployeeFORXMLPATH 最佳答案 XML元素或属性名称中不能有空格。使用SELECTU

c# - 使用 C# .NET 处理 XML 中的禁用字符

我有一个要序列化为xml的对象。其中一个属性中的值似乎包含十六进制字符0x1E。我已尝试将XmlWriterSettings的编码属性设置为“utf-16”和“unicode”,但我仍然抛出异常:生成XML文档时出错。--->System.InvalidOperationException:生成XML文档时出错。--->System.ArgumentException:'',十六进制值0x1E,是无效字符。有没有办法把这些字符放到xml中?如果不是,是否还有其他字符会导致问题? 最佳答案 XML推荐标准(又名规范)http://ww

xml - TSQL FOR XML 路径属性,类型

基本上我需要从数据库中输出单值和多值字段。大多数数据用户都不是技术人员,如果他们能够阅读XML并理解它,那就太好了。在另一篇文章的帮助下,我几乎一路走到了那里。我遇到的问题是元素名称不能有任何空格。需要包含可能包含空格的显示名称。例如MVtextdisplayName="多值文本"。如果正确答案是内联模式或其他方法,请告诉我。这不像我可以发布静态模式,因为应用程序可以动态添加字段。并且字段可以随着报告的类型而改变。这些字段在一个表中,我读取该表以构建选择。如何传达可能包含元素空格的显示名称?SQL2008R2。SELECTtop4[sv].[sID]AS'@sID',[sv].[sPa

.net - 从 SQL XML 列中的元素获取属性名称

对于此xml(在SQL2005XML列中):1我希望能够检索属性的名称(ba、bb、bc、bd),而不是SQLServer2005中的值。好吧,XPath当然允许使用name()进行此操作,但SQL不支持。这是我对在SQL中使用XML的主要提示;您必须找出XML/Xpath/XQuery规范的哪些部分在那里。我能想到的唯一方法是构建一个CLRproc,将XML加载到XML文档(iirc)中并运行XPath来提取节点的名称。我愿意接受这里的建议。 最佳答案 DECLARE@xmlasxmlSET@xml='1'SELECTDISTIN

.net - 如何避免 XML 注入(inject)

我有用于形成XPath查询的输入字段值。我应该检查输入字符串中的哪些符号以尽量减少XML注入(inject)的可能性? 最佳答案 这document详细描述了“BlindXPathInjection”的概念。它提供了XPath注入(inject)的具体示例,并讨论了防止此类注入(inject)的方法。在“DefendingagainstXPathInjection”一节中说:"防御XPath注入(inject)本质上类似于防御SQL注入(inject)。应用程序必须净化用户输入。具体来说,单双引号字符应该被禁止。这可以在应用程序中完

.net - XmlWriter 编码问题

我有以下代码:MemoryStreamms=newMemoryStream();XmlWriterw=XmlWriter.Create(ms);w.WriteStartDocument(true);w.WriteStartElement("data");w.WriteElementString("child","myvalue");w.WriteEndElement();//dataw.Close();ms.Close();stringtest=UTF8Encoding.UTF8.GetString(ms.ToArray());XML生成正确;然而,我的问题是字符串'test'的第一个

sql-server - "FOR XML EXPLICIT"Msg 6833 "requires parent tags to be opened first"Error 故障排除建议

我继承了一个1000行的存储过程,它使用FORXMLEXPLICIT生成XML。我的问题是它大部分时间都有效。在某些情况下,我收到错误:ParenttagID2isnotamongtheopentags.FORXMLEXPLICITrequiresparenttagstobeopenedfirst.Checktheorderingoftheresultset.Number:6833Severity:16State:1我需要有关如何解决此问题的想法。我需要找出嵌套失败的地方。这可能是父行未发出但子行发出的情况。更糟糕的是,这个问题只发生在我们的测试系统上,它可能丢失了一些生产数据。问题是

xml - WiX XmlConfig : Purpose for nesting XmlConfig in XmlConfig

将XmlConfig元素嵌套在另一个XmlConfig中的目的和/或收获是什么(除了增加创建/删除属性的可读性)>元素?我所指的示例(我使用的是WiX3.6): 最佳答案 简短的回答:嵌套选项的唯一目的elements是为了能够以更具可读性的方式向新创建的元素添加/删除属性。所以,这基本上就是您的假设。考虑以下初始XML文件:为了添加另一个为此,可以使用以下WiX代码段:因此,XML文件最终如下所示:这里有几点需要注意:Action无法在内部定义属性XmlConfig元素,这是合乎逻辑的-它与父元素之一相同Node也不能定义属性,因

.net - 在 .net 中验证和读取 xml 文件的最简单方法?

什么是最简单/最简单/最干净的方法:从文件系统中读取一个xml文件根据xsd验证xml将部分xml文件读入变量使用.net。 最佳答案 基本上,要进行XSD验证,您需要使用带有ReaderSettings的XmlReader,后者定义要验证的XSD文件以及响应/捕获验证错误的事件。要读取XSD文件,请使用如下内容:StreamReaderxsdReader=newStreamReader(xsdFileName);XmlSchemaSchema=newXmlSchema();Schema=XmlSchema.Read(xsdRead