我已阅读关于独立关联的文章,从Ladislav。我检查了他在link中提供的信息。该信息是相当有用的,它揭示了一些光。 但是我想模拟我可以访问的现有数据库。它有三个表用户,证书和测验。具有代码第一独立关联或外键关联的EF模型
起初我想到建模作为独立的关联。为什么?我的用户表具有主键UserID和证书表具有PK CertID和列UserID,我可以说是一个外键。就在我认为它是一对多关系时,我意识到Users表中的某个UserID在Certificates表中找不到。但是,证书中的所有用户标识都可以在用户表中找到。
我的问题是我应该使用独立的关联,如果有的话如何实现这一点,我的用户表成为主要类和证书之一的依赖。这样,我可以显示或从我的用户表中获取值,然后从我的asp.net mvc 3应用程序的证书表中读取值。
请更正此代码下面这说明什么,我打算做到我上面说:
public class Certificates
{
[Key]
public Users CertID { get; set; }
public int ID { get; set; }
public DateTime recvd { get; set; }
public int QuizID { get; set; }
}
public class Users
{
public int ID { get; set; }
public string LastName { get; set; }
public string FirstName { get; set; }
public string email { get; set; }
public ICollection<Certificates> Certificates { get; set; }
}
public class Quiz
{
public int QuizID { get; set; }
public string QuuizName { get; set; }
public int VolumeNo { get; set; }
public int mark { get; set; }
public ICollection<Certificates> Certificates { get; set; }
}
public class cpdContext : DbContext
{
public DbSet<Certificates> Certificates { get; set; }
public DbSet<Users> Users { get; set; }
public DbSet<Users> Quiz { get; set; }
最后我怎么显示的细节与这三个类与能力的信息视图来添加用户标志和测试。测验和证书之间我想要建模的关系是1对多。
感谢Slauma。我遵循你的建议,并喜欢我不了解的Fluent API。阅读相关数据时,我可以从证书读取到用户,即从多人到一个,但我无法从用户读取我想要执行的证书的相关信息。 – Sithelo
@Sithelo:我无法从你的评论中发现问题。如果可能的话,请为您的问题创建一个新问题,您可以在其中显示查询以及哪些内容有效,哪些内容无效。 – Slauma