0

あるポイントに出くわしたとき、LINQ to SQL とエンティティ フレームワークの違いを経験していました。クラス"

「Microsoft SQL Server データベースから .NET クラスへの 1 対 1 の直接マッピング」の意味を説明できる人はいますか?

4

2 に答える 2

1

スキーマ内のすべてのテーブルとデータベースは、ORM 内の .Net クラスによって表されます。

于 2012-07-20T10:58:29.087 に答える
0

これは必ずしも包括的な回答ではありませんが、これが発生する最も一般的なケースを明確にする必要があります。

ユーザーとグループの間に多対多の関係がある場合、LinqToSql は User、UserToGroup、Group の 3 つのクラスを作成します。Entity Framework は、User、Group の 2 つのクラスを作成します。

ほとんどの人にとって、UserToGroup クラス (本質的に多対多の関係を解決するためのリレーショナル データベース構造) をコード モデルで公開するのは扱いにくいものです。ユーザーからユーザーが属するグループにナビゲートしてから、追加の無意味なクラスをナビゲートする必要がある方が、コードではより自然です。

これは一般に、LinqToSql の「制限」と見なされます。この「機能」を備えた別の .NET ORM は考えられません。私が知っている他のすべての ORM は、Entity Framework の方法をサポートしています。

于 2012-07-20T11:53:03.440 に答える