小编omi*_*rae的帖子

在C#中编写XML - '状态Epilog中的Token StartElement将导致无效的XML文档'错误

我正在尝试写入XML文档,从列表的ArrayList中获取数据

        for (int i = 0; i < 15; i++)
        {
            string headname = (headers[0] as List<string>)[i];
                headname.Replace("&", "&amp;");
                headname.Replace("<", "&lt;");
                headname.Replace(">", "&gt;");
                headname.Replace("\"", "&quot;");
                headname.Replace("'", "&apos;");
            textWriter.WriteStartElement("MetadataName", "");
            textWriter.WriteString(headname);
            textWriter.WriteEndElement();
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是,在经过for循环一次后,我得到一个'状态Epilog中的Token StartElement将导致无效的XML文档'错误就行了WriteStartElement,我已经尝试查找如何解决它,并没有真正有任何突破.谢谢.

已编辑以进行更新.

c# xml

8
推荐指数
2
解决办法
2万
查看次数

带有对象列表的C#if语句语法

我有一个名为Attributes的对象列表,基本上我需要在C#中执行以下操作

<pseudocode>
if (list.Contains(Attribute where getName() == "owner"))
{
   do stuff
}
</pseudocode>
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是if - "属性getName()=="owner"的嵌套括号位.这是我的代码 - 它显然不起作用,但大多数if应该是正确的,它是只是得到我需要在正斜杠做一点,我不知道如何.

if (attributes.Contains(Attribute /where/ attribute.getName() == "Owner"))
    {
        string value = attr.getValue();
        value = value.Replace(domain, "");
        user = value;
        UserExists(value);
    }
Run Code Online (Sandbox Code Playgroud)

我可能很密集,但我不得不重新开始3天的开发,将所有内容都改为使用属性对象,所以我的大脑被摧毁了.抱歉.

c# if-statement

5
推荐指数
1
解决办法
6057
查看次数

在C#中使用关闭按钮

我正在使用VS 2008在C#中构建一个应用程序 - 我添加了一个检查文件在关闭时是否已更改的方法,但这仅适用于文件>关闭菜单.在关闭所有东西之前,有没有办法让右上方的红色X真正做任何事情?如果是这样,怎么样?我只做了几天的C#,这令人难以置信的混乱 - 整个界面窗口没有任何方法.非常感谢帮助.谢谢.

c# windows

2
推荐指数
1
解决办法
944
查看次数

将变量用于类实例名称C#

我已经为其他语言找到了一些线程但C#没有...

基本上,我需要的是每次实例化一个具有不同名称的类(为了能够在类之间创建链接)

我目前的代码:

foreach (DataRow dataRow in RoutingObjects.Rows)
{
    NodeViewModel node = CreateNode(dataRow.ItemArray[1].ToString(), new Point(globalx, globaly), false, dataRow.ItemArray[0].ToString());
}
Run Code Online (Sandbox Code Playgroud)

这将为表中的每一行创建一个新的NodeViewModel.我真正需要的是每个NodeViewModel都有不同的名称,但我不知道如何做到这一点.

我尝试在循环中使用一个简单的int但我不能在类实例名中添加一个变量.(明显错误的)代码在这里:

int i = 0;
foreach (DataRow dataRow in RoutingObjects.Rows)
{
    NodeViewModel node+i = CreateNode(dataRow.ItemArray[1].ToString(), new Point(globalx, globaly), false, dataRow.ItemArray[0].ToString());
    i++;
}
Run Code Online (Sandbox Code Playgroud)

我想到这一点,我应该采取不同的做法,这可能是一个可怕的想法,但我想要一些建议!如果有可能我想知道 - 否则,一些替代方案会非常有用=)

谢谢!

c# class

2
推荐指数
1
解决办法
163
查看次数

标签 统计

c# ×4

class ×1

if-statement ×1

windows ×1

xml ×1