首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Code First域类

Code First域类
EN

Stack Overflow用户
提问于 2014-01-07 03:02:27
回答 1查看 111关注 0票数 0

我是ASP.Net MVC和EF代码的新手。我想创建一个专业的音乐分享网站。但我担心,如果我在代码First.Also中是真的,我想要使用简单的成员资格或您建议的任何其他成员资格,并且我想在我的解决方案中使用分层。我应该有以下实体:

代码语言:javascript
复制
namespace MusicSite.Models
{
    public class Media
    {
        public int Id { get; set; }
        public MediaType MediaType { get; set; }
        public string  FilePath { get; set; }
        public string Title { get; set; }
    }
}

namespace MusicSite.Models
{
    public enum MediaType
    {
        MP3=1,
        MusicVideo=2,
        Photo=3
    }
}

namespace MusicSite.Models
{
    public class MP3:Media 
    {
        public Artist Artist { get; set; }
    }
}

namespace MusicSite.Models
{
    public class Artist
    {
        public User User { get; set; }
    }
}

namespace MusicSite.Models
{
    public class User
    {
        public int Id { get; set; }
        public string Username { get; set; }
        public string Password { get; set; }
        public string FirstName { get; set; }
        public string LastName { get; set; }
    }
}

我不知道如何关联这些实体。你能帮帮忙吗?

EN

回答 1

Stack Overflow用户

发布于 2014-01-07 03:29:09

首先在模型中关联实体,例如:

代码语言:javascript
复制
public class Media
{
    public Artist Artist { get; set; }
}

public class Artist
{
    public int Id { get; set; }
    public string Name { get; set; }
}

如果您允许EF基于此模型生成数据库,您将发现Media表将包含一个名为Artist_Id的列,该列是对Artist表的外键引用。

如果您决定以并行方式(例如,手动)创建数据库,则需要设计数据库以正确利用EntityFramework Conventions,或者使用Data AnnotationsEntityFramework Fluent Mappings

在这一点上,我的建议是-如果你真的希望进行代码优先开发-将创建类并使用EF到generate the database

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20957273

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档