0

正在建立一个照片库,我的客户将能够通过开源 CMS 解决方案管理内容。网站上的画廊将使用 XML 动态生成。

XML 结构的格式需要如下所示。我试图做的是看看是否有一种方法可以自动填充这个文件,无论是通过每晚在 Windows 中运行的脚本来更新它还是通过 C# 后端文件。

XML结构:

<image>
<title>Image Title</title>
</image>
4

1 回答 1

1

一种选择是使用 XmlSerializer

您可以创建一个用于序列化的对象

[XmlType("image")]
public class XmlImage
{
    [XmlType("title")]
    public string Title { get; set; }

    [XmlType("src")]
    public string Source{ get; set; }

}

然后您可以创建此对象的列表并序列化为 xml 文件。

// make a list of the images you want to save
List<XmlImage> images = new List<XmlImage>(Directory.GetFiles("imageDir")
    .Select(file => new XmlImage
                        { 
                           Title = System.IO.Path.GetFileNameWithoutExtension(file),
                           Source = file
                        }));

// create an XmlSerializer for you list type
XmlSerializer xmlSerializer = new XmlSerializer(typeof(List<XmlImage>));

// open file stream
using (FileStream stream = new FileStream("destinationFile", FileMode.OpenOrCreate))
{
    // save list to xml
    xmlSerializer.Serialize(stream, images);
}
于 2013-03-06T00:04:05.337 回答