Entity framework 4 EF4.1模型设计

Entity framework 4 EF4.1模型设计,entity-framework-4,ef-code-first,Entity Framework 4,Ef Code First,EF代码优先-模型 我有两门课: public class Alias { public int id { set; get; } public string Name { set; get; } public ICollection<Tweet> Tweets { set; get; } } public class Tweet { public int id {set;get;} public Alias Author { set; get;

EF代码优先-模型

我有两门课:

public class Alias
{
    public int id { set; get; }
    public string Name { set; get; }
    public ICollection<Tweet> Tweets { set; get; }
}

public class Tweet
{
   public int id {set;get;}
   public Alias Author { set; get; }
}

我试图了解模型是如何工作的,如何以及何时创建FK。。。请给我一个简单的解释。。。提前谢谢你

SQL不需要在两个表上都使用外键。没有像C#中那样的方向概念

Tweet表需要一个id来说明它连接到哪个别名。因此,您可以非常轻松地查询由该别名生成的所有推文


如果别名表上有Tweet_Id,那么当同一个人发出第二条Tweet时,会设置为什么?

首先是您的执行实体框架代码,对吗?这是关于关系数据库的核心知识,所以如果你不理解这些概念,你应该停止使用EF,试着学习一些关于关系数据库的知识。如果你对关系概念没有基本的了解,你将无法正确地使用EF。Thx David,你的答案是有意义的,因为它是1..多。但是如果我有1比0,谁会有FK呢?如何选择包含FK的模型?如果您还可以提供一个示例,说明如何编写基于(1到0..1)的两个模型,这将非常有用。。。1:我不太确定它会是什么样子。我需要试试看。从技术上讲,我认为你可以把外键放在两端。在SQL中,在别名表中创建一个可为空的Tweet_Id可能更为明确,但我对EF的了解还不够透彻,无法说出它会做什么。我可以试着举个例子,但我不能保证它会很快成为现实。。。
public class Alias
{
    public int id { set; get; }
    public string Name { set; get; }
    public Tweet Tweets { set; get; }
}

public class Tweet
{
   public int id {set;get;}
   public Alias Author { set; get; }
}