با سلام
دستور Ado.net زیر به درستی کار میکنه اما ما خواستیم با Entity , Linq دستور رو پیاده سازی کنیم و خطای TimeOut میده، ظاهرا کوئری ما با روش Linq کاملا غلطه! چون packet size , TimeOut رو خیلی زیاد کردم اما درست نشد، در صورتی که با Ado.net خیلی سریع نتیجه رو میگه
دستور Ado.net به شکل زیر هستش
SqlDataAdapter adb = new SqlDataAdapter("SELECT shs, COUNT(*) AS cnt FROM [sanad] GROUP BY shs having (count(shs)>1)", con);
دستوری که مثلا ما تبدیل کردیم به linq به شکل زیر شده!
خواهش میکنم صحیح دستور Ado.net بالا رو بگین
var Query = (from c1 in db.sanad join c2 in db.sanad on c1.shs equals c2.shs into g from c3 in g where c1 != c3 select new model { shs = c1.shs, cnt = g.Count() }).Distinct();
نرم افزار Linqer را دانلود کنید
کار تبدیل کوئری های tsql به linq را انجام میده
ممنونم ازتون
مشکل حل شد به لطف شما
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)