PDA

View Full Version : سوال: مشکل در لود اطلاعات با حجم زیاد مثلا 14000 رکورد در گیریدویو



zhr.rezae66i
پنج شنبه 20 تیر 1392, 08:19 صبح
سلام
من حدود حداقل 14000 رکورد میخام با گیریویو نمایش بدم
وقتی همه رو یکباره نمایش میدادم برنامه از کار می افتاد و یا به شدت کند میشد
از paging خود گیرید استفاده کردم و سایزش رو روی 1000 تا گذاشتم
حالا برنامه بقیه قسمت هاش کار میکنه اما خوده paging کار نمیکنه، یعنی روی صفحه یک مونده و با کلیک رو بقیه شماره صفحات اتفاقی نمیفته و نمایش نمیده
بنظرتون من برای لود اطلاعات به این تعداد در گیرید چکار باید بکنم
ایا مشکل از واکشی اطلاعات هست؟
کسی میتونه بمن کمک کنه لطفا

gholami146
پنج شنبه 20 تیر 1392, 09:21 صبح
بانک اطلاعاتی که استفاده میکنید چیه و طریقه ارتباط شما با اون به چه صورتی هست ؟

zhr.rezae66i
پنج شنبه 20 تیر 1392, 10:13 صبح
بانک اطلاعاتی sqlserver 2012 و با eval بایند انجام دادم

ali_mnkt
پنج شنبه 20 تیر 1392, 10:55 صبح
باید از custome paging استفاده کنی . تو google جستجو کن مقالات زیادی در موردش وجود داره

zhr.rezae66i
پنج شنبه 20 تیر 1392, 11:14 صبح
میشه ی توضیحی بدید من وقت زیاد ندارم بخدا

tree1371
پنج شنبه 20 تیر 1392, 11:34 صبح
حانوم خوب سرور گناه داره این چه کاریه شما می خواید بکنید دونه به دونه بخونید . custom paging یعنی تکه تکه کردن اطلاعات در دیتابیس واسه خوندن اونها

کد sp کد زیز میشه


USE [CMS]
GO
/****** Object: StoredProcedure [dbo].[InitializationGridUserManager] Script Date: 7/11/2013 12:12:07 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER proc [dbo].[InitializationGridUserManager]

@PageIndex int,
@PageSize int,
@Count int out

as

declare @Low int , @Up int
set @Low = (@PageIndex - 1) * @PageSize
set @Up = (@PageIndex * @PageSize ) +1

;with GridPaged as
(SELECT cms_Name,cms_Id,cms_UserName,cms_Email,cms_Registe rDate,cms_LastLoginDate,cms_SendEmail,cms_States,c ms_Type , ROW_NUMBER() OVER(ORDER BY cms_Id) as RowNum FROM UserInfo left join UserType on cms_UserTypeId =cms_IdType )

SELECT * FROM GridPaged WHERE RowNum > @Low and RowNum < @Up
set @Count = (select COUNT(cms_Id) from UserInfo)
return

zhr.rezae66i
پنج شنبه 20 تیر 1392, 11:46 صبح
میشه یکم توضیح بدید چطور ازش استفاده کنم
count در کد شما قراره چکار کنه؟

zhr.rezae66i
پنج شنبه 20 تیر 1392, 16:37 عصر
لطفا بیشتر راهنمایی کنید دوستان من چطور ازین استور پروسجر استفاده کنم

parvizwpf
پنج شنبه 20 تیر 1392, 17:02 عصر
شما باید بهش دو تا مقدار برای پارامترهای pageindex- pageSize پاس کنید. همین استور رو بجای سلکت قبلی جایگزین کنید.
pageindex :صفحه جاری
pageSize : تعداد رکوردهای هر صفحه(اگه اشتباه نکنم)

zhr.rezae66i
جمعه 21 تیر 1392, 14:23 عصر
دوست من میتونی بگی توی لینک زیر
http://www.codeproject.com/Articles/410733/Custom-paging-with-ASP-NET-GridView
کد زیر یعنی چی و من دقیقا چیو باید بجاش قرار بدم چون تاحالا اصلا با این کد سروکار نداشتم


string url = ConfigurationManager.AppSettings["URL"].ToString();
//string templates for links string link = "<a href='" + url +
"?Index=##Index##&amp;Size=##Size##'><span class='page-numbers'>##Text##</span></a>";
string link_pre = "<a href='" + url +
"?Index=##Index##&amp;Size=##Size##'><span class='page-numbers prev'>##Text##</span></a>";
string link_next = "<a href='" + url +
"?Index=##Index##&amp;Size=##Size##'><span class='page-numbers next'>##Text##</span></a>";

zhr.rezae66i
جمعه 21 تیر 1392, 17:08 عصر
شما باید بهش دو تا مقدار برای پارامترهای pageindex- pageSize پاس کنید. همین استور رو بجای سلکت قبلی جایگزین کنید.
pageindex :صفحه جاری
pageSize : تعداد رکوردهای هر صفحه(اگه اشتباه نکنم)

Count در کدی که فرستادید قراره چکار کنه؟