更新 RavenDB 文档中的字段
本文关键字:字段 文档 RavenDB 更新 | 更新日期: 2023-09-27 18:32:57
美好的一天,
我有一个RavenDB JSON文档,其中一个字段("信息")包含一个如下所示的字符串:
"{'"value1'":'"9'", '"value2'": '"dog'", ....}"
我想删除转义的"'"
字符,以便它被 RavenDB 识别为 JSON 列表。
但是,我尝试使用
newString = oldString.Replace("''", "")
,
newString = oldString.Replace(@"'", "")
和newString = oldString.Trim(new Char[] { @"'" })
但它不起作用。应用上述这些方法后,字符串看起来没有变化。
请参阅下面的完整代码:
while(true)
{
var result = session.Query<Documents>()
.Take(1000).Skip(i)
.ToList();
if (result.Count == 0)
break;
foreach (var r in result)
{
string rInfo = r.Info.ToString();
rInfo = rInfo.Replace("''", "");
PATCHED_Doc r_Doc = new PATCHED_Doc()
{
Info = rInfo,
Value = "test",
Id = r.Id,
Date = r.Date,
};
session.Store(r_Doc);
session.SaveChanges();
}
session.SaveChanges();
i += result.Count;
}
public class PATCHED_Doc
{
public string Info { get; set; }
public string Value { get; set; }
public int Id { get; set; }
public string Date { get; set; }
}
提前感谢您的帮助。
您需要将 JSON 解析为一个对象,然后将其移交给 Raven DB。字符串被视为字符串。使用 JSON.NET 库将其解析为匿名对象。 将 Info 属性更改为对象类型。然后将匿名对象分配给 Info 属性。