【问题标题】:Entity Framework: Working with FK's (why do they get hidden?)实体框架:使用 FK(为什么它们会被隐藏?)
【发布时间】:2010-09-21 20:10:23
【问题描述】:

首先,让我们定义几个表:

Users 表将存储有关用户的信息:

Users
- UserID (int, PK)
- ...

UserTasks 是一个存储与用户关联的任务的表:

UserTasks
- userID (int, FK to Users table)
- taskName (varchar)

当我使用 ADO 实体框架生成 UserTasks 表时,我会得到一个如下所示的类:

用户任务
- 任务名称(字符串)
- 用户(用户对象的集合)

注意:在 UserTasks 表中没有生成用户 ID。所以现在让我们假设我需要插入一个新的用户任务......我该怎么做?我无权访问 userID FK 字段,所以我唯一的选择是查找并填充一个用户对象,然后将其传递给我的任务对象,如下所示:

//get the user we are interested in 
var user = (from u in context.Users
           where u.userID == 2
           select u).FirstOrDefault();  

//create the new task
UserTasks newTask = new UserTasks();
newTask.taskName = "New Task";
newTask.User = user;

上面的问题是我正在做一个额外的和不必要的数据库调用来填充我的用户对象。有没有办法以某种方式创建到我的 userID 字段的新映射并仍然保留 User 对象?

谢谢

--瑞恩

【问题讨论】:

    标签: asp.net entity-framework ado entities


    【解决方案1】:

    不是现在,而是maybe in the next version

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-06-21
      • 1970-01-01
      • 1970-01-01
      • 2015-05-05
      • 1970-01-01
      • 1970-01-01
      • 2012-08-17
      相关资源
      最近更新 更多