0

linq-to-sql Webアプリケーションを構築していますが、問題が発生しました。Facebookからリアルタイムで取得したユーザーの友達リストを使用して、SQLテーブルと結合しようとしています。

そのために私は通常.Contains(friends)を使用しています。ここでfriendsはユーザーIDです。問題は、友達が2100を超える値の場合、LINQが.contains(friends)を使用できず、例外が発生することです。

だから私の質問は-ユーザーの友達をその場で読んでそれを私のSQLテーブルに結合するためのベストプラクティスは何ですか?

ありがとうございます!

4

1 に答える 1

2

複数のクエリを発行します。各クエリは最大2100個の値をクエリします。表示されている問題は、SQLServerがクエリバッチごとに2100個のSQLパラメータしか受け入れられないことです。

その意味で、あなたの問題はFacebookとは何の関係もありません。これは、LINQ to SQLが送信することを決定したクエリの種類によってトリガーされるSQLServerの制限です(クエリを別の方法で送信する方法はありません)。

于 2012-10-28T12:09:37.250 に答える