تعداد زیادی رکورد حدود 300000 درون یک فایل متنی قرار دارد (متاسفانه) !!
فضای این فایل حدود 50MB است.(فضایش اون قدر هم زیاد نیست!!!)
پس از بررسی و محاسبات رکورد های این فایل که توسط StreamReader خوانده می شود می بایست اطلاعات بدست آمده را درون یک DB از نوع Sql Server Compact 3.5 ذخیره کرد.
سرعت خواندن از فایل بسیار بالاست ومشکلی در این قسمت وجود ندارد.
من برای ریختن اطلاعات درون DB روش های زیر را امتحان کردم اما همگی کند هستند و کاربر را خسته می کنند.
1:Typed Dataset:
با استفاده از متد Insert درون Adapter .
2: Sql
با استفاده از TableAdapter و فرمان INSERT INTO و سپس ExecuteNonQuery
3-استفاده از روش دوم و یک Parallel.ForEach
اما تمام این روش ها کند هستند.
با توجه به این مطلب LinqToSQl هم جالب نیست:
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
من سرعت بیشتری می خواهم. خیلی خیلی بیشتر!
من EF رو امتحان نکردم اما دوستان اگر مطمئن هستند که سرعت بهتری در Insert میدهد بفرمایند.
از تمامی دوستان مخصوصا H2 خواهشمندم که من را راهنمایی کنند.(خیلی فوریه)
ممنون