.net - 我可以使用带有 mvc 4 的代码优先 Entity Framework 将日期时间用作键吗?

标签 .net entity-framework asp.net-mvc-4

我试图将工作日表示为 ASP.NET MVC 4 应用程序数据库中 c#/table 中的一个类。我想使用代码优先的 Entity Framework 。当我尝试为工作日添加 Controller 时,我收到一条错误消息,指出它必须具有 key /身份。我知道我可以只添加一个 int ID 字段来消除错误——但是有什么方法可以告诉 Entity Framework 使用 DayOfWork 作为 PK?这似乎是在数据库中表示这一点的最干净的方式。这一天应该是PK。

namespace TimeKeeper.Models
{
    public class WorkDay
    {
        public DateTime DayOfWork { get; set; }
        public Boolean holiday { get; set; } 
    }
}

最佳答案

您应该能够将 [Key] 属性添加到 DayOfWork 属性来执行此操作。

namespace TimeKeeper.Models
{
    public class WorkDay
    {
        [Key]
        public DateTime DayOfWork { get; set; }
        public Boolean holiday { get; set; } 
    }
}

参见 Here on stack overflow这是否是个好主意。

关于.net - 我可以使用带有 mvc 4 的代码优先 Entity Framework 将日期时间用作键吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16985522/

相关文章:

c# - 如何使用 LINQ 更新列表中的值

c# - rc1.final 中的 User.Identity 中不存在 getUserId

c# - 为什么我的项目连接到不同的数据源?

c# - 比较属性不使用比较属性的显示属性

asp.net - 使用 MVC 4 的 .NET 4.5 数据访问应用程序 block

c# - 如何使用 C# 从 git 存储库检索文件历史记录?

.net - DbContext ChangeTracker : Id of Added Entity for Auditing

.net - WCF 能否与 native (C++) 应用程序一起使用或从 native (C++) 应用程序使用?

c# - 删除相关表的多条记录

asp.net - Angularjs + MVC - 找不到 TemplateUrl