我已經開始在RavenDB的一個示例中學習NoSQL。我已經開始與一個簡單的模型,假設我們有用戶創建的主題:如何同步nosql db中的更改(ravendb)
public class Topic
{
public string Id { get; protected set; }
public string Title { get; set; }
public string Text { get; set; }
public DenormalizedUser User { get; set; }
}
public class DenormalizedUser
{
public string Id { get; set; }
public string Name { get; set; }
}
public class User
{
public string Id { get; protected set; }
public string Name { get; set; }
public DateTime Birthdate { get; set; }
//some other fields
}
我們不需要用於顯示Topic
整個User
,因此我將非規格化到DenormalizedUser
,含Id
和Name
。
所以,這裏的問題:
1)這種方法糾正的NoSQL?
2)如何處理User
更改Name
的情況?我是否需要手動更新非規格化類中的所有Name
字段?
不知道的問題1. 2,是的,你將不得不更新字段爲「DenormalizedUser」「名稱」太多,因爲字符串,對於所有意圖和目的,是通過值,不處理參考。我不僅僅明白爲什麼你不能僅僅使用'User' - 'DenormalizedUser'來表示無意義和冗餘的數據。爲了清晰和語法,編輯(多次)。我需要更多咖啡._ –