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 に答える