使用edmx将逗号分隔的项目转换为实体

时间:2012-11-15 19:48:52

标签: vb.net entity-framework ado.net-entity-data-model ef-database-first

是否可以将列(存储为逗号分隔)转换为edmx设计器中的另一个实体?

表格结构

student
  id
  name
  subjects << this is the comma delimited column (1,2,3,10)

subject
  id
  name

EDMX设计师结构将是

student 
  id
  name

student_subject
  studentId
  subjectid

subject
  id
  name   

如果是这样,有人可以指出我如何在EF设计师身上做到这一点。

注意:我无法更改表结构,我首先使用数据库

感谢

1 个答案:

答案 0 :(得分:0)

没有办法做到这一点。更糟糕的是:在SQL中,有可能使用IN子句获取主题,但是使用linq你甚至没有选择。我担心剩下的是一个艰苦的linq-to-objects操作,你首先从数据库中获取Student,然后在int数组中解析主题,最后获取{{1}带有Subject查询的问题:

Contains

(并且不要忘记将建筑师作为学生送到主题为'数据库设计'的课程)