我需要将XML文档存储在数据库中,然后才能根据某些字段值检索它。
AWS DynamoDB符合我的需求,因为它是一个文档数据库,允许我根据键/索引值进行查询。从教程和演示中,我能够存储JSON文档,但无法以XML格式存储相同的内容。
我无法找到有关在NOSQL数据库,DynamoDB或其他方面存储XML文档的任何资源。我该如何处理这种情况?
答案 0 :(得分:2)
由于没有对XML的本机支持,我建议您在联系DynamoDB之前在应用程序中定义或使用xml< - > json转换器。
答案 1 :(得分:1)
这里是使用C#Newtonsoft和DynamoDB SDK DocumentModel将DynamoDB表中的数据与XML之间的数据转换的代码示例。
private Document DocumentFromXmlElement(XmlElement ndRow)
{
string json = Newtonsoft.Json.JsonConvert.SerializeXmlNode(ndRow, Newtonsoft.Json.Formatting.None, true);
Document document = Document.FromJson(json);
return document;
}
private XmlElement DocumentToXMLElement(Document document, string docName)
{
string json = document.ToJson();
XmlDocument xmlDoc = Newtonsoft.Json.JsonConvert.DeserializeXmlNode(json.ToString(), docName);
return xmlDoc.DocumentElement;
}