"Database" 文件中的 XML 结构
"Database" structure in XML file
所以我必须在 xml 文档中定义一个 "database",它必须有学校、年级、房间、课程和学生,然后我必须写一些 类在 C# 中,必须在反序列化和序列化的帮助下获取数据并将其保存到 xml 文件。
但问题是我不知道应该如何构建 XML 文件,现在我的文件看起来像这样:
<?xml version="1.0" encoding="utf-8" ?>
<School>
<Grades>
</Grades>
<Rooms>
</Rooms>
<Courses>
</Courses>
<Students>
</Students>
</School>
但我一直在想这是否是更好的方法:
<?xml version="1.0" encoding="utf-8" ?>
<School>
<Grades>
<Rooms>
<Courses>
<Students>
</Students>
</Courses>
</Rooms>
</Grades>
</School>
或者我可能忽略了第三种方式,我们将不胜感激
这个问题是基于意见的。所以,这只是我的意见:
选择第一个布局并在它们之间使用属性 @ID
s 到 link。
例如:
<?xml version="1.0" encoding="utf-8" ?>
<School>
<Grades>
<Grade id="gr1">...</Grade>
</Grades>
<Rooms>
<Room id="rm1">...</Room>
</Rooms>
<Courses>
<Course id="crs1">
<RoomNr>rm1</RoomNr> <!-- Referring to the Rooms/Room/@id rm1 -->
...
</Course>
</Courses>
<Students>
<Student id="1">
<Course>crs1</Course> <!-- Referring to the Courses/Course/@id crs1 -->
<Course>...</Course>
</Student>
</Students>
</School>
此布局很容易查询,更改 link 不会显着改变布局。
例如(因为您用 xslt 标记了您的问题):
检索所有 <Student>
可以使用 XPath-1.0 表达式
/School/Students/Student
检索访问某个课程的所有 <Student>
s(例如 crs1)
/School/Students/Student[Course='crs1']
...等等。
所以我必须在 xml 文档中定义一个 "database",它必须有学校、年级、房间、课程和学生,然后我必须写一些 类在 C# 中,必须在反序列化和序列化的帮助下获取数据并将其保存到 xml 文件。 但问题是我不知道应该如何构建 XML 文件,现在我的文件看起来像这样:
<?xml version="1.0" encoding="utf-8" ?>
<School>
<Grades>
</Grades>
<Rooms>
</Rooms>
<Courses>
</Courses>
<Students>
</Students>
</School>
但我一直在想这是否是更好的方法:
<?xml version="1.0" encoding="utf-8" ?>
<School>
<Grades>
<Rooms>
<Courses>
<Students>
</Students>
</Courses>
</Rooms>
</Grades>
</School>
或者我可能忽略了第三种方式,我们将不胜感激
这个问题是基于意见的。所以,这只是我的意见:
选择第一个布局并在它们之间使用属性 @ID
s 到 link。
例如:
<?xml version="1.0" encoding="utf-8" ?>
<School>
<Grades>
<Grade id="gr1">...</Grade>
</Grades>
<Rooms>
<Room id="rm1">...</Room>
</Rooms>
<Courses>
<Course id="crs1">
<RoomNr>rm1</RoomNr> <!-- Referring to the Rooms/Room/@id rm1 -->
...
</Course>
</Courses>
<Students>
<Student id="1">
<Course>crs1</Course> <!-- Referring to the Courses/Course/@id crs1 -->
<Course>...</Course>
</Student>
</Students>
</School>
此布局很容易查询,更改 link 不会显着改变布局。
例如(因为您用 xslt 标记了您的问题):
检索所有
<Student>
可以使用 XPath-1.0 表达式/School/Students/Student
检索访问某个课程的所有
<Student>
s(例如 crs1)/School/Students/Student[Course='crs1']
...等等。