Archive

Archive for the ‘.Net’ Category

مقایسه کارایی در NHibernate & Entity Framework

شهریور ۳۱م, ۱۳۸۸ HFakhraei No comments

NHibernate و Entity Framework دو تا از معروفترین ORM هایی هستند که در برنامه های نوشته شده به Net. قابل استفاده می باشند. شاید این سوال مانند من برای شما نیز پیش آمده باشد که از کدامیک از این ORM ها استفاده کنید. در زیر مقایسه ای کلی بین این دو ORM انجام شده است که نتیجه آن در جدول زیر خلاصه شده است.

Winner Entity Framework- 40K NHiberante – 40K Entity Framework – 4K NHiberante – 4K Operation \ Number of operations
Entity Framework 98 1500 9,19 37,37 Store
Entity Framework 4,18 10,13 0,54 1,01 Read over relations

NHibernate with smaller amount of objects

230 246 25,22 3,06 Read by ID
Both 72 77 7,34 6,61 Update
NHibernate 58 58 16,76 3,35 Delete

جهت کسب اطلاعات بیشتر به این آدرس مراجعه کنید.

Categories: .Net Tags:

استفاده مشترک از فایل ها در پروژه های Visual Studio

مرداد ۲۶م, ۱۳۸۸ HFakhraei ۲ comments

در برنامه نویسی زمانهایی لازم است که فایل هایی بین پروژه های مختلف به اشتراک گذاشته شود، مانند فایل App.Config که می خواهیم یکبار این فایل را تغییر دهیم و تاثیر آن در تمامی پروژه هایی که از این فایل استفاده می کنند دیده شود. به این منظور در Visual Studio امکانی به نام Solution Folder فراهم شده است که می توانیم فایل هایی را که می خواهیم به صورت مشترک استفاده شود در آنجا قرار دهیم. جهت ایجاد یک Solution Folder ابتدا باید بر روی نام Solution کلیک راست کرده و از منوی Add قسمت New Solution Folder را انتخاب کنیم.

image 

بعد از ایجاد Solution Folder بهتر است بر روی هارد دیسک در مسیری که پروژه در آنجا ایجاد شده است فولدری به همین نام ایجاد کنیک و فایل هایی را که قرار است به صورت مشترک در پروژه ها مورد استفاده قرار گیرند را به داخل این فولدر کپی کنیم.

در این مرحله باید فایل مورد نظر را به تک تک پروژه ها اضافه کنیم. فرق این مرحله با حالت عادی اضافه کردن فایل به یک پروژه این است که بجای اینکه در منوی Project –> Add Existing Item بعد از انتخاب فایل دکمه Add را انتخاب کنیم بر روی فلش موچکی که کنار دکمه Add وجود داد کلیک کرده و Add As Link را انتخاب می کنیم. در این حالت خود فایل به داخل پوشه اصلی پروژه کپی نشده و فقط لینکی از آن به پروژه ما اضافه می شود.

 imageimage

توجه شود بعد از اضافه شدن یک فایل به پروژه به عنوان Link کنار نام فایل آیکنی که نشان دهنده لینک است قرار خواهد گرفت.

 

Categories: .Net Tags:

ابزار های Open Source در Net.

مرداد ۲۲م, ۱۳۸۸ HFakhraei ۱ comment

شاید شما نیز مانند من دوستانی داشته باشید که به زبان Java برنامه نویسی می کنند و زمانی که شروع به صحبت در مورد برنامه هایی که نوشته اند می کنند، از ابزار های برنامه نویسی زیادی نام می برند که برای شما ناشناخته می باشد و بعضی اوقات شما را به این فکر فرو می برند که نکند شما نیز بهتر است به زبان برنامه نویسی Java مهاجرت کرده تا زیاد از آنها عقب نمانید.

البته زیاد نباید نگران بود زیرا اکثر ابزار و برنامه هایی که در زبان Java مورد استفاده قرار می گیرند به زبان #C نیز ترجمه شده اند و نسخه های بسیار قوی از آنها نیز برای برنامه نویسان Net. موجود می باشد. از این گونه برنامه های می توان موارد زیر را نام برد:

  • Sprint.Net که همان Spring سمت جاوا می باشد
  • NHibernate که همان Hibernate سمت جاوا می باشد.
  • iBATIS.Net که همان iBATIS سمت جاوا می باشد.

پس شاید بهتر باشد همین امروز آستین ها را بالا بزنیم و بیشتر با دنیای Open Source در Net. آشنا شویم.

Categories: .Net Tags:

Visual Studio Themes

اسفند ۱م, ۱۳۸۷ HFakhraei ۲ comments

شاید شما نیز مانند من از ظاهر محیط Visual Studio خسته شده باشید و دلتان بخواهد نمای سفید آنرا تغییر دهید. من سایت های بسیاری را جهت تغییر رنگ های Visual Studio جستجو کردم تا در نهایت ظاهر زیر به نظرم از همه بهتر آمد.

image

در زیرمراحل تغییر ظاهر برنامه Visual Studio به طور کامل توضیح داده شده است. جهت تغییر ظاهر Visual Studio مراحل زیر را دنبال نمایید.

  • ابتدا فایل تغییر ظاهر Visual Studio را از اینجا دانلود نمایید و آنرا در مسیر ..\Visual Studio 2008\Settings در My Documents کپی کنید.
  • در محیط Visual Studio از منوی Tools زیر منوی Import and Export Setting… را انتخاب کنید.

image

  • راهنمای نصب را دنبال کرده و وارد قسمت Select Import selected environment settings شوید.

image

  • در ادامه نصب Select Yes, save my current settings. را انتخاب کنید. این قسمت از تنظیمات فعلی شما نسخه پشتیبان تهیه کرده و این امکان را به وجود می آورد که  اگر تنظیمات جدید به درستی اعمال نشد به تنظیمات قبلی بازگشت نمایید.

image

  • راهنمای نصب تمام فایل های را که دارای پسوند vssettings می باشند را نمایش می دهد. جهت اعمال تنظیمات فایل مورد نظر خود را انتخاب نمایید.

image

  • راهنمای نصب این امکان را فراهم می کند که قسمتی از تنظیمات را اعمال کنید در این صفحه بهتر است All Settings را انتخاب کنید و جهت اعمال تنظیمات بر روی دکمه Finish کلیک نمایید.

image

حالا قسمت Editor با تنظیمات جدید نمایش داده می شود. از آن لذت ببرید.

منبع: Rhonda Tipton’s WebLog

از بین Viewstate, Session, Application, Cache, Cookies کدام را انتخاب کنیم؟

بهمن ۱۲م, ۱۳۸۷ HFakhraei ۲ comments

مشکل اصلی تمامی برنامه های وب

تمامی برنامه هایی که در محیط وب نوشته می شوند به طور ذاتی stateless می باشند، به این معنی که بعد از اینکه یک صفحه در سمت سرور برای کلاینت ایجاد گردید دیگر هیچ گونه اطلاعاتی از آن صفحه بر روی سرور باقی نمی ماند و هنگامیکه کاربر صفحه را Submit می کند شما مجبورید تمامی اطلاعات را از ابتدا بارگذاری کرده و صفحه را ایجاد نمایید.

ASP.Net برای حل این مشکل راه حل های متفاوتی ارائه نموده است:

  • Viewstate
  • Session Variables
  • Application Variables
  • Cache
  • Cookies

سوالی که در اینجا مطرح می شود این است که چه زمانی از چه راه حلی استفاده نماییم؟

۱- Viewstate

Viewstate یک فیلد اطلاعاتی مخفی در داخل صفحات ASP.Net است که اطلاعات تمامی کنترل های بر روی صفحه که خاصیت “EnableViewstate” آنها True می باشد را شامل می شود.

شما همچنین می توانید اطلاعات خاصی را مانند زیر به Viewstate صفحه خود اضافه نمایید:

Viewstate.Add( “TotalStudents”, “87″ );

توجه داشته باشید که اطلاعات Viewstate فقط در داخل یک صفحه قابل دسترسی می باشد و زمانی از آن بهتر است استفاده شود که رفت و برگشت های متعددی در داخل یک صفحه داشته باشیم.

به دلیل اینکه Viewstate ها در زمان ایجاد صفحه به کد تولید شده اضافه می شوند، حجم صفحات تولید شده را در زمان انتقال به کلایت افزایش می دهند، پس بهتر است در زمانهایی که با محدودیت bandwidth  رو به رو هستیم (مانند اتصال Dialup) در استفاده از Viewstate ها دقت نماییم.

۲- Session Variables

بیشتر برنامه نویس ها علاقه زیادی به استفاده از Session Variable ها دارند و Session Variable ها بسیار پر کاربرد می باشند.

هنگامی که کاربر از یک سایت دیدن می کند یک Session برای او باز می گردد و این Session زمانی از بین می رود که کاربر سایت را ترک کند یا برای مدت مشخصی Idle گردد. توجه گردد اطلاعات Session بین کاربران به اشتراک گذاشته نمی شود.

Session Variable ها بهتر است در زمان هایی استفاده گردند که اطلاعات خاصی لازم است در تمامی صفحات به اشتراک گذاشته شود و این اطلاعات را باید توان در صفحات مختلف ذحیره و یا به روز کرد.

Session Variables ها از حافظه رم سرور استفاده می کنند پس بهتر است در زمان هایی که سایت شما بازدید کننده های بسیار دارد در استفاده از آنها دقت شود و اطلاعات حجیم را در آنها نگهداری نکنید.

۳- Application Variables

Application Variables  ها اطلاعاتی می باشد که در میان تمامی کاربرانی که از یک سایت دیدن می کنند به اشتراک گذاشته می شود.

Application Variables ها را می توان به عنوان جانشینی برای Static Variable ها در محیط Stateless وب دانست. پس بهتر است فقط اطلاعاتی را که لازم ااست بین تمامی کاربران به اشتراک گذاشته شود در آنها قرار داد و به مجرد اینکه نیازی به آنها نبود آنها را از بین برد.

۴- Cache

شاید بتوان گفت Cache از کمترین درجه اهمیت در ASP.Net بر خوردار است.

Cache را می توان به  منبعی برای نگهداری حالت های اشیائی مانند Pages, Controls تشبیه کرد. که نیاز به تولید مجدد آنها نمی باشد (یا پس از یکبار تولید آنها تغییری در آنها ایجاد نمی شود) و همیشه ساختار و شکل یکسانی دارند و به صورت مداوم از آنها استفاده می شود.

۵- Cookies

Cookie ها اطلاعاتی می باشند که بر خلاف بقیه مدل ها بر روی Browser کاربر برای استفاده در آینده نگهداری می شوند.

بیشتر مواقع ازCookie ها در سایت های پریا برای شاناسایی خودکار کاربر و بازیابی اطلاعات و تنظیمات خاص آن کاربر استفاده می شود، مانند ورود خودکار (Automatic Login) به یک وب سایت.

به دلیل اینکه Cookie ها در سمت کاربر نگهداری می شوند ممکن است از نظر امنیتی دچار مشکل شوند و توسط Browser هک شوند. پس بهتر است اطلاعات مهم را در داخل Cookie ها ذخیره نکنیم.

در انتها بهتر است موارد زیر را در نظر بگیریم:

ViewState همیشه به Bandwidth زیادی نیاز دارد.

Session ها بسته به تعداد کاربران می توانند حافظه زیادی مصرف کنند.

Application Variable ها به صورت اشتراکی مصرف می شوند.

Cache بسته به تعداد کاربرانی که از سیستم استفاده می کنند می تواند منابع سیستم (مانند حافظه) را بسیار اشغال کند.

Cookie ها از امنیت کمی برخوردار هستند.

منبع: ArticleBase

Categories: .Net Tags:

شام عروسی

خرداد ۳م, ۱۳۸۷ HFakhraei ۲ comments

20080522(003) 20080522(004) 20080522(006) 20080522(007) 20080522(010) 20080522(011) 20080522(012) 20080522(013) 20080522(014) 20080522(016) 20080522(017) 20080522(018) 20080522(019) 20080522(020) 20080522(021)

Categories: .Net Tags:

Switch to our mobile site