使用文件上传保存 XML 文件

本文关键字:文件 保存 XML | 更新日期: 2023-09-27 18:37:15

如何将xml文件的内容保存到具有XML类型的数据库中(在字段中)

我应该阅读文件的内容,即:

文件

上传1.文件内容;

然后将其作为参数发送到数据库中?正确吗?

使用文件上传保存 XML 文件

您必须首先将其保存到服务器硬盘,然后将其InnerXML到字符串变量,然后将其保存到数据库中。

假设您将文件保存到磁盘中的某个文件夹中,则可以使用以下方法(使用 LINQtoXML)来读取内容

XElement elm = XElement.Load(Server.MapPath(@"../YourUploadFolder/yourXMl.xml"));
if(elm!=null)
{
    var reader = elm.CreateReader();
    reader.MoveToContent();
    string xmlContent = reader.ReadInnerXml(); xmlContent
   // Now save to the database    
}
您应该使用 XmlReader

和 XmlTextReader 类将 XML 文件加载到内存中。它们在 System.XML 命名空间中定义。您还可以使用在 System.Xml.Linq 命名空间中定义的 XDocument 类。欲了解更多信息,请看这里:

http://www.c-sharpcorner.com/uploadfile/mahesh/readingxmlfile11142005002137am/readingxmlfile.aspx

http://support.microsoft.com/kb/307548

var reader = new XmlTextReader("C:''temp''xmltest.xml");

然后,如果可能,您可以将 XML 内容存储为 XML 存储在数据库中(取决于您使用的数据库系统)或作为 varchar。最好将它们存储为 XML,因为您可以确保它的格式正确并根据某个模式进行验证,例如!

您基本上可以从 XML 文本字符串中填充 XML 类型的列,因此您可以轻松地使用normal INSERT statement并将 XML 内容填充到该字段中。为此,您必须读取XML文件。

您可以使用 System.Xml.Linq 命名空间并使用XDocument.Load(@"YourXmlFile.xml");或任何标准方法来读取 XML 文件,如此处所述 - http://support.microsoft.com/kb/307548