私は SQL Server 2008 R2 で単純なストアド プロシージャを作成しました。これは、SSMS でのテスト時に即座に実行されます。しかし、LINQ2SQL(DBML)にマッピングしてそこで実行すると、なぜかタイムアウトしてしまいます。
私はこれをどこから始めるべきか少しも知りません...
編集: 他のすべてが機能します (一般的な LINQ2SQL と他の sprocs)。以下の sproc が DBML に新たに追加されました。
スプロケット:
SELECT TOP 50 P.ID, t1.NAME
FROM P
INNER JOIN t1 ON P.ID = t1.ID
WHERE (P.ID <> @id) AND (P.ID2 = @id2) AND t1.NAME IN (
select NAME from t1
where ID = @id
)
C#:
int id1,id2;
using (var db = new DataContext())
{
foreach (var item in db.SPROC(ID1, ID2)) // Timeout exception here!
{
// code...
}
}
編集 #2: sproc をまったく同じコードに変更したところ、動作するようになりました。何が問題だったのかはわかりませんが、SQL Server のせいではないと思います。