根据这篇文章: http://subsonicproject.com/docs/3.0_Migrations你如何处理SubSonic与迁移的“关系”?
Bottom line: if you're a developer that is concerned about database design,
migrations might not be for you.
好吧,这很好,我可以把数据库作为数据简单的持久存储库不包含任何业务逻辑。换句话说,一个荣耀的文本文件。
我不知道该怎么做是将两个对象联系在一起。举个例子,这两个类:
public class Disaster
{
public int DisasterId { get; set; }
public string Name { get; set; }
public DateTime? Date { get; set; }
public IList<Address> Addresses { get; set; }
}
public class Address
{
public int AddressId { get; set; }
public string WholeAddressHereForSakeOfBrevity { get; set; }
}
Disaster
包含多个Addresses
的IList
的灾难都打的。当我使用SimpleRepository
将这些添加到数据库SimpleRepositoryOptions.RunMigrations
时,它会生成包含所有列的表,但不包含所需的外键列。
我会如何将这两者联系起来,以便当我拨打Disaster.Addresses
时,我会得到所有受影响Addresses
的列表?这是可能的还是我必须改用ActiveRecord并首先创建数据库表?或者,我是否必须将灾难ID的列添加到Address
?如果是这样,这种方法对于多对多关系如何工作?
正如你可以在我原来的文章中提供的代码中看到的,我没有添加IList(我现在已经转换为IQueryable,因为我想延迟加载)到Disaster类。不过,我不确定你的意思是“只要确保找回你的地址”。如果这个关联没有存储在数据库中,我怎么知道要检索哪个地址? – 2009-09-24 01:51:04
如果它在数据库中没有关系...那么你有点迷失在我的那里。如果它在另一个系统中,那么在你需要时调用它。 – 2009-09-29 18:30:15