سلام خسته نباشین ، من شبیه به پروژه Asp.net core 3 که تو سایتتون ارایه کردین در حال نوشتن یه پروژه شبیه به همین پروژه هستم
من به دلیل این که دیتابیسم نزدیک به 10 میلیون رکورد داره فراخوانی کویری هایم با متد Get زمان بر هست
و بعد از چند ثانیه با ارور
An unhandled exception occurred while processing the request.
SocketException: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.
مواجه میشم و بعضی از مواقع هم درست کار میکنه
از قابلیت async Task , await هم استفاده کردم که این 2 خودشون ارور میدن موقع اضافه کردن
ممنون میشم کمک کنین
List<Tbl_Data_Sim> sim09 = _context._data_SimUW.Get(a => a.Mobile == mobile, null, "").ToList();
ممنون از پاسخ دهی سریعتون
استفاده از متد Take برای واکشی محدود اطلاعات در انتیتی فریم ورک
اما در مورد سوال شما، ببینید واکشی حدود 10 میلیون رکورد قطعا فشار زیادی به سرور و دیتابیس میاره و منابع سیستمی زیادی رو مصرف میکنه که باعث Crash کردن سیستم یا hang کردن سیستم به صورت طولانی میشه. اگر شما قصد دارید اطلاعاتتون رو نمایش بدید قطعا کاربر نیاز نداره به طور همزمان 10 میلیون رکورد رو ببینه.
بنابراین می تونید توسط دستور زیر مثلا 1000 رکورد آخر رو واکشی کنید و اگر کاربر نیاز داشت اطلاعات دیگه ای رو ببینه براش قابلیت جستجو بذارید و در هر بار جستجو هم نهایتا 1000 رکورد رو واکشی کنید.
List<Tbl_Data_Sim> sim09 = _context._data_SimUW.Get(a => a.Mobile == mobile, null, "").ToList().Take(1000);
اگر فکر می کنید که عملیاتی دارید که ممکنه بار زیادی روی سرور بذاره و یا اطلاعات زیادی میخواید واکشی کنید برای جلوگیری از ایجاد مکث یا هنگ در سیستم می تونید تابع خودتون رو به صورت ناهمزمان تعریف کنید:
public async Task<IActionResult> Index()
{
var myVar = _context.TableName.ToListAsync();
}
کد بالا به صورت نمونه نوشته شده. شما هم کافیه کدهاتون رو با توجه به دستورات بالا تغییر بدید.
به نظر خودم با توجه به اینکه می فرمایید حدود 10 میلیون رکورد دارید استفاده از Take بهتر باشه.
ضمنا بهتره سوالتون رو با جزییات کامل بپرسید و به نرم افزار یا آموزش دیگه ای ارجاع ندید چون ممکنه بازدیدکنندگان سوال شما اون آموزش رو ندیده باشن
تاریخ :
1403/08/29
- ساعت :
07:15:00 PM
- بازدید :
48
- پاسخ :
0
|
تاریخ :
1403/08/18
- ساعت :
10:40:00 AM
- بازدید :
87
- پاسخ :
0
|
تاریخ :
1402/07/23
- ساعت :
04:01:00 PM
- بازدید :
1031
- پاسخ :
1
|
تاریخ :
1403/05/30
- ساعت :
09:22:00 AM
- بازدید :
426
- پاسخ :
1
|
تاریخ :
1402/08/16
- ساعت :
10:38:00 AM
- بازدید :
1346
- پاسخ :
1
|
تاریخ :
1398/08/17
- ساعت :
01:27:00 AM
- بازدید :
4796
- پاسخ :
1
|
تاریخ :
1403/07/27
- ساعت :
03:21:00 PM
- بازدید :
204
- پاسخ :
1
|
تاریخ :
1403/07/26
- ساعت :
09:00:00 PM
- بازدید :
115
- پاسخ :
0
|
تاریخ :
1403/05/16
- ساعت :
09:57:00 AM
- بازدید :
393
- پاسخ :
2
|
تاریخ :
1403/06/25
- ساعت :
11:39:00 PM
- بازدید :
561
- پاسخ :
1
|
تاریخ :
1403/08/29
- ساعت :
07:15:00 PM
- بازدید :
48
- پاسخ :
0
|
تاریخ :
1403/08/18
- ساعت :
10:40:00 AM
- بازدید :
87
- پاسخ :
0
|
تاریخ :
1402/07/23
- ساعت :
04:01:00 PM
- بازدید :
1031
- پاسخ :
1
|
تاریخ :
1403/05/30
- ساعت :
09:22:00 AM
- بازدید :
426
- پاسخ :
1
|
تاریخ :
1402/08/01
- ساعت :
06:25:00 PM
- بازدید :
930
- پاسخ :
1
|
تاریخ :
1402/08/16
- ساعت :
10:38:00 AM
- بازدید :
1346
- پاسخ :
1
|
تاریخ :
1398/08/17
- ساعت :
01:27:00 AM
- بازدید :
4796
- پاسخ :
1
|
تاریخ :
1402/09/08
- ساعت :
07:34:00 PM
- بازدید :
1156
- پاسخ :
1
|
تاریخ :
1402/09/21
- ساعت :
11:10:00 PM
- بازدید :
594
- پاسخ :
1
|
تاریخ :
1403/07/27
- ساعت :
03:21:00 PM
- بازدید :
204
- پاسخ :
1
|