Simple button checks is a simple plugin for transform checkbox inputs into html buttons for css customize. High performance, keyboard support and preserve original input click/change events. Demo
اشتراکها
اشتراکها
نگارش نهایی NET Core 2.1. منتشر شد
In this article, we'll walk you through updating an existing ASP.NET Core 1.x project to ASP.NET Core 2.0. Migrating your application to ASP.NET Core 2.0 enables you to take advantage of many new features and performance improvements.
اشتراکها
دوره آموزشی - مقدمه ای بر Angular 2
اشتراکها
StructureMap 4.0 منتشر شد
اشتراکها
نگاهی به WPF in .NET 4.6
اشتراکها
VisualSVN Server 3.3 منتشر شد
از آرایه برای ذخیره سازی آیتمهای مشابه استفاده میشود. این تشابه باید علاوه بر اینکه در نوع دادهای آیتمها رعایت شود، باید از نظر مفهومی نیز رعایت شود.
زمانیکه از یک آرایه برای نگهداری المنتهای غیر مشابه استفاده میشود، نیاز به چنین بازسازی کدی است. به طور مثال آرایهای که آیتم اول آن "نام" و آیتم دوم آن "امتیاز" است. قطعا کار با چنین آرایهای بسیار مشکل خواهد بود. زمانیکه یک آرایه را از نوع دادهای عمومیتری (مثلا object در سی شارپ) تعریف و انواع دادهای متفاوت را در آیتمهای آن نگهداری کنیم، اوضاع بسیار بدتر خواهد شد.
محور اصلی بازسازی کد "جایگزینی آرایه با شیء" ایجاد یک کلاس، برای ذخیره اطلاعات آرایه است. به این صورت که برای هر آیتم آرایه، یک خصوصیت در کلاس مربوطه ایجاد میشود.
به طور مثال به آرایه زیر توجه نمایید:
var row = new string[3]; row[0] = "Liverpool"; row[0] = "15";
در آرایه بالا، آیتم اول نشان دهنده نام تیم و آیتم دوم نشان دهنده امتیاز تیم است. با وجود اینکه این مثال کمی غیر واقعی به نظر میرسد، اما چنین مثالهایی در برنامه نویسی روزمره ممکن است به اشکال مختلفی مشاهده شود. مانند استفاده از dictionary برای دریافت اطلاعات فرم وب، استفاده از Tuple (در زبان سی شارپ) برای انتقال اطلاعات و …
در این مثال طراحی بهتر، ایجاد یک کلاس یا ساختار (بسته به شرایط کلی مسئله) برای نشان دادن امتیاز تیم است:
public class Performance { public string TeamName { get; set; } public int Score { get; set; } }
تمامی استفادهها از آرایهها، در دسته بندی این نوشتار برای بازسازی کد قرار نمیگیرند. آرایههایی که اصل مشابه بودن آیتمها را رعایت میکنند، معمولا نیازی به بازسازی کد ندارند. به طور مثال در نرم افزارهای فروشگاه اینترنتی، خصوصیات کالا به صورت داینامیک ذخیره شده و احتمالا برای دسترسی و مدیریت آن، از آرایه یا لیست استفاده میشود. اما با کمی دقت خواهیم دید، این استفاده از آرایه، با تعریف مشابه بودن آیتمها همخوانی دارد. زیرا تمامی آیتمهای آرایه به طور مثال از نوع خصوصیت کالا هستند. همچنین عملا امکان بازسازی و ایجاد کلاس در این مثال وجود ندارد؛ زیرا خصوصیات کالاها در زمان توسعه مشخص نیستند و در زمان اجرای برنامه تنظیم میشوند.
بازخوردهای دوره
تزریق خودکار وابستگیها در ASP.NET Web API به همراه رها سازی خودکار منابع IDisposable
برای معرفی کلاسها و اینترفیسها مطابق کد شما از ObjectFactory استفاده کردم; دو تا سوال داشتم ممنون میشم جواب بدین اول اینکه پیغام میده این کلاس منسوخ شده آیا روش جایگزینی هست؟ و سوال دوم اینکه آیا IUnitOfWork به صورت خودکار منابعش آزاد میشه؟ چون متد HttpContextScoped وجود نداره.
با تشکر
با تشکر