我的情况是我的数据库中有两个实体,我正在尝试将其转换为NOSQL。网站和客户
我开始以为我会交换它,所以我有一个网站集合,每个网站都有一个客户,但不需要一个。但我仍然认为顾客应该是父母,因为这似乎更自然。但是,在这种情况下,我对没有客户的网站会怎样做。
是否有处理这种情况的公约?我承认我仍然习惯于在NOSQL中如何运作
提前致谢。
答案 0 :(得分:0)
如果您使用面向对象的数据库,我的建议是实现类Site,Customer和SitePerCustomer这样
[Database]
public class Site
{
...
}
[Database]
public class Customer
{
public IEnumerable<Site> ConnectedSites
{
get
{
return SQL<Site>("SELECT s.Site from SitePerCustomer s WHERE s.ConnectedCustomer=?", this);
}
}
[Database]
public class SitePerCustomer
{
public Site ConnectedSite;
public Customer ConnectedCustomer;
}
然后,您可以使用Customer以及Site。 Customer实例可以使用get属性或方法与所有站点相关联。