我在三个文件(Database.xml、Participants.xml 和 ConditionTokens.xml)中包含一些 xml 数据。我正在尝试使用外部实体将参与者和条件令牌放入数据库文件中,但是当我运行此代码时......
string xmlPath = Environment.CurrentDirectory + @"\Data\Database.xml";
XElement database = XElement.Load(xmlPath);
...我的 xml 中没有参与者或条件标记(“数据库”的 HasElements 属性为假)。应该有两个子元素。我在 Visual Studio (2008) 中没有收到任何错误/警告,并且实时模式验证似乎很开心,但是当我运行我的代码时,有些地方不太对劲。
谁能告诉我我做错了什么?
我已经粘贴了下面的三个 xml 文件。
非常感谢!
-担
数据库.xml
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE database [
<!ENTITY conditionTokens SYSTEM "ConditionTokens.xml">
<!ENTITY participants SYSTEM "Participants.xml">]>
<database
xmlns="experimentManager"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="experimentManager Database.xsd">
&conditionTokens;
&participants;
</database>
条件令牌.xml
<?xml version="1.0" encoding="utf-8" ?>
<conditionTokens>
<conditionToken>
<id>1</id>
<token>LargeToSmall</token>
</conditionToken>
<conditionToken>
<id>2</id>
<token>SmallToLarge</token>
</conditionToken>
</conditionTokens>
参与者.xml
<?xml version="1.0" encoding="utf-8" ?>
<participants>
<participant>
<id>1</id>
<conditionTokenId>1</conditionTokenId>
</participant>
<participant>
<id>2</id>
<conditionTokenId>2</conditionTokenId>
</participant>
</participants>