1

以前は EF4 を使用していたときに、データベースに追加されていたすべてのオブジェクトが (おそらく誤って) パターンに従っていました

Poll oPoll = new Poll();
oPoll.Name = "My Special Poll Question";
context.AddToPolls(oPoll);
context.saveChanges();

ただし、EF5 に切り替えるときは、代わりに create オブジェクトを使用する必要があります。

Poll oPoll = context.Poll.Create();
oPoll.Name = "My Special Poll Question";
context.AddToPoll(oPoll);
context.SaveChanges();

私は今、約 3,000 ページのコードを持っているので、すべての新しいキーワードを検索したり、手作業で調べたりしたくはありません。このパターンを EF5 の新しいパターンに更新する (ツールまたはその他の方法による) 洗練された方法はありますか?

4

1 に答える 1

4

すべてのエンティティの名前がわかっている場合は、グローバルな正規表現の置換を実行できます。

タイプとして Poll、Vote、および Person があるとします。次のように置き換えることができます。

(Poll|Vote|Person) (.+) = new .+\(\);

$1 $2 = context\.$1\.Create\(\);

それはに変わるだろPoll oPoll = new Poll();Poll oPoll = context.Poll.Create();

置き換えたいエンティティ タイプを追加するには、正規表現の最初の部分を編集するだけです。

于 2013-05-08T13:43:46.753 に答える