实体框架 - 不需要创建类别字段

时间:2012-02-28 11:23:48

标签: entity-framework-4.1 ef-code-first poco

我有两个POCO对象:

public class Product
{
    public int ProductID { get; set; }
    public string Name { get; set; }
    public int CategoryID { get; set; }
    public virtual Category Category { get; set; }
}

public class Category
{
    public int CategoryID { get; set; }
    public string Name { get; set; }
}

很明显,当我创建产品时,我可以为该产品选择一个类别。或者更确切地说,需要一个类别。

我无法在没有明确选择类别的情况下创建产品,而且我的数据结构是这样的,我不想创建“无类别”类别条目。

我已经考虑过在这两个表之间进行多对多映射......但是如果可能的话,我想避免使用它。

我要么做些傻事,要么根本没办法做到这一点。

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:8)

使CategoryID可以为空。如果您没有为CategoryID提供值,则会在数据库中将其设置为NULL

public class Product
{
    public int ProductID { get; set; }
    public string Name { get; set; }
    public int? CategoryID { get; set; }
    public virtual Category Category { get; set; }
}