Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 实体框架codefirst 1对多关系_C#_Asp.net Mvc_Entity Framework_Ef Code First - Fatal编程技术网

C# 实体框架codefirst 1对多关系

C# 实体框架codefirst 1对多关系,c#,asp.net-mvc,entity-framework,ef-code-first,C#,Asp.net Mvc,Entity Framework,Ef Code First,使用codefirst方法,我希望有一个CODE_YESNO表,其中有两列C_CODE(1)和C_DESC(5),这两列都是字符串类型 然后我想把它引用到我的其他表格中 例如,假设我有我有用户和产品表 对于USERS表,我将有userIsActive(外键C_代码) 对于产品表I,将有productIsOnDiscount(外键C_代码) 我不想在CODE_YESNO表上添加或进行任何修改 那么,如何使用代码优先的方法来实现这一点呢?就我个人而言,如果它只是“是/否”,我会使用布尔值。但更一般地

使用codefirst方法,我希望有一个CODE_YESNO表,其中有两列C_CODE(1)和C_DESC(5),这两列都是字符串类型

然后我想把它引用到我的其他表格中

例如,假设我有我有用户和产品表

对于USERS表,我将有userIsActive(外键C_代码) 对于产品表I,将有productIsOnDiscount(外键C_代码)

我不想在CODE_YESNO表上添加或进行任何修改


那么,如何使用代码优先的方法来实现这一点呢?

就我个人而言,如果它只是“是/否”,我会使用布尔值。但更一般地说,您可以轻松地实现查找表

public class YesNo
{
    [Key]
    public string C_CODE { get; set; }
    public string C_DESC { get; set; }
}
然后,您的类通过导航属性进行引用:

public class User
{
    public int UserId { get; set; }
    public string UserName { get; set; }

    public string UserIsActiveCode { get; set; }
    [ForeignKey("UserIsActiveCode")]
    public YesNo UserIsActive { get; set; }
}

public class Product
{
    public int ProductId { get; set; }
    public string ProductName { get; set; }

    public string ProductIsOnDiscountCode { get; set; }
    [ForeignKey("ProductIsOnDiscountCode")]
    public YesNo ProductIsOnDiscount { get; set; }
}

请用详细的表格丰富您的问题,用户很难理解您的表格。请从用c#建模类(表格)开始。在表之间添加字段和引用作为这些类的属性。当你准备好了,你就有了你的代码优先模型?这对于一个堆栈溢出问题来说太宽泛了。非常喜欢,先生