Thursday, October 14, 2010

حل مشکل کندی در سرچ یا لاگین با روش Lazy Loading

اگر با یک دیتا بیس سروکار داشته باشید که جدولهای آن رکوردهای زیادی داشته باشد ( مثلا 500 هزار رکورد با بیشتر ) ، حتما به این مشکل برخورد کرده اید که در هنگام select زدن برای سرچ یا برای لاگین ، حجم زیادی از داده ، باید از سرور به کلاینت شما انتقال یابد که باعث کندی بیش از حد عملیات جستجو یا لاگین می شود . برای حل این مشکل در LINQ  شما می توانید با باز کردن DATACONTEX  خود ، فیلدهایی از جدول مورد نظر را که فعلا احتیاج ندارید ( مثلا فیلد عکس یا آدرس  یا هر فیلدی که در عملیات فعلی اهمیت ندارد ) را با کلیک روی جدول و انتخاب فیلد،  خصوصیت  Delay Loaded  را برابر True قرار دهید . با اینکار این فیلد فعلا لود نمی شود و هر وقت لازم بود می توان آنرا فراخوانی کرد . مثال کامل را در اینجا بخوانید . 
این روش به LAZY LOADING معروف است . 

اضافه و کم کردن ابزارهای ادیتور تلریک Rad Editor Telerik

یکی از کامپوننت های پرکاربرد ، کامپوننتهای Telerik است که ابزار  radEditor  آن برای وارد کردن متن با فرمت خاص بسیار مفید می باشد . این ادیتور ، ابزارهای بسیار زیادی برای قالب بندی محتوا دارد ( مثل ایتالیک و بولد و ... ) که اگر همه آنها را استفاده کنید ، ادیتور شلوغ می شود و فضای زیادی اشغال می کند ، برای گزینش ( customize ) کردن این ابزارها از خصوصیتی به نام ToolsFile استفاده می شود که در آن آدرس یک فایل از نوع xml را باید وارد کرد ، مثلا :
ToolsFile="~/layouts/CanonExpert/config/ToolsFile.xml"
و در این فایل هر کدام از ابزارها را که تمایل داشتید ، می توانید مخفی کنید . 
لیست همه ابزارها و مثالی از فایل فوق را در اینجا می توانید ببینید. 
فراموش نکنید که متن درون این ادیتور با خصوصیت content قابل دسترسی است : 
radEditorContent.Content