好日子,在RavenDB文檔更新場
我有一個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; }
}
預先感謝您的幫助。
請發佈完整的代碼。你有沒有注意到你不能在.NET中更改字符串?它們是不可改變的。你需要創建一個新的。你調用的方法正是這樣做的,你可能沒有正確使用返回值。 – nvoigt 2014-12-02 12:15:37
@nvoigt編輯我的問題。希望更清楚。 – Martin 2014-12-02 12:28:57