1

我只是想问一下这在Linq中是否可行

我有 3 个相同的表:

TableA           TableB          TableC
Name             Name            Name
Age              Age             Age

在插入值之前,我需要选择要插入的表。条件应该是这样的:

var TableABC = new Table;
if(str == 'a')
{
   TableABC = TableA;
}
else if (str == 'b')
{
   TableABC = TableB;
}
else
{
   TableABC = TableC;
}

var Save = new TableABC 
{
    Name = 'John Smith',
    Age = 30
}

Context.Table.AddObject(TableABC);
Context.SaveChanges();
4

2 回答 2

1

我找到了一个解决方案..我没有使用 var 我使用了动态 ..

var TableABC = new Table;

dynamic TableABC;
于 2014-01-23T08:10:23.500 回答
0

创建实体对象并使用如下对象会更有帮助

switch(str)
  case 'a':
    context.EntityA.Add(obj);
    context.SaveChanges();
   break;
 etc...

现在关于如何创建实体对象(这很容易,因为它们是普通类)和使用 EF 并创建上下文,您可以准备好本教程:

http://weblogs.asp.net/scottgu/archive/2010/07/16/code-first-development-with-entity-framework-4.aspx

于 2013-10-10T06:46:57.217 回答