Application Insights راهکار ارائه شده توسط Microsoft است که در سه بخش به ما کمک میکند تا سیستم لاگ مؤثر و کارآمدی داشته باشیم: ۱- متدهای پایه Log که به صورت دستی فراخوانی میشوند، مانند TrackEvent برای ثبت یک رویداد بیزینسی که این متدها فراتر از متدهای معمول loggerهای متداول هستند. ۲- به صورت خودکار ، Application Insights خطاهای سیستم را لاگ نموده و همچنین در زمان کار کردن با Http Client، دیتابیس و سایر Dependency ...
SQLite به صورت توکار از full-text search پشتیبانی میکند؛ اما اهمیت آن چیست؟ هدف از full-text search، انجام جستجوهای بسیار سریع، در ستونهای متنی یک جدول بانک اطلاعاتی است. بدون وجود یک چنین قابلیتی، عموما برای انجام اینکار از دستور LIKE استفاده میشود: SELECT Title FROM Book WHERE Desc LIKE '%cat%';
کار این کوئری، یافتن ردیفهایی است که در آن واژهی cat وجود دارند. مشکل این روش، عدم استفادهی از ایندکسها و اصطلاحا انجام یک full ...
سناریویی را در نظر بگیرید که میخواهید لیست Blogها را به همراه Post هایشان که شامل کلمهی خاصی است، به کلاینت باز گردانید. در این حالت احتمالا چنین کدی به نظرتان خواهد آمد: // -- FilteredInclude_EFCore5
var list = dbContext.Blogs
.AsNoTracking()
.Include(p => p.Posts.Where(p => p.Title.Contains("test title")))
.ToList();
return Json(list);
...
به مناسبت ارائهی نسخه 7.4 از Microsoft.AspNetCore.OData که دیروز صورت پذیرفت، تصمیم گرفتم آموزش استفاده از OData را در پروژههای ASP.NET Core 3.1 به بالا که دارای endpoint routing هستند (روش توصیه شده)، تهیه کنم تا در آن، پروژه کمترین تغییر ممکن را برای اضافه شدن OData داشته باشد و ببینیم که استفاده از آن در نسخههای جدید، به چه میزان آسان شده است. ابتدا با dotnet --version و یا dotnet --info و یا هر روش دیگری، از نصب بودن dot ne ...
Custom Elements، دارای یک چرخه حیات میباشند. در طی این چرخه حیات، میتوان تعدادی متد خاص را به المان سفارشی خود اضافه کرد که به صورت خودکار توسط مرورگر فراخوانی میشوند. به این متدها Life-cycle C allbacks یا Custom Element Reactions نیز میگویند. برای درک بهتر چرخه حیات مذکور، به تکه کد زیر توجه نمائید: customElements.define("x-component", class extends HTMLElement {
constructor() {
super();
...
Web Components مجموعهای از تکنولوژیهایی میباشند که امکان ساخت المانهای سفارشی با قابلیت استفادهی مجدد و به همراه کپسولهسازی ساختار، استایل و عاملیت (Functionality) متناظر با المان ایجاد شده را در اختیار شما قرار میدهد. در این سری چند قسمتی، ابتدا روش ساخت Web Components را بدون استفاده از ابزار خاصی بررسی کرده و در ادامه با معرفی Stenciljs ، چند کامپوننت سفارشی را طراحی خواهیم کرد. سه تکنولوژی اصلی مورد استفاد ...
در این سری قصد آموزش افزونهی Resharper برای Visual studio را دارم که توسط شرکت Jetbrains برای بهبود امکانات Visual Studio و افزایش سرعت کد نویسی، نوشته شدهاست. این نرم افزار را از لینک زیر میتوانید دانلود کنید: Download لینک مرجع آموزشی آن هم در زیر در دسترس میباشد: info نصب نرم افزار نصب این افزونه، یکی از راحتترین قسمتها میباشد. فقط کافی است از لینک داده شده نرم افزار را دانلود کنی ...
در این مقاله نمیخواهیم به طور عمیقی وارد جزییاتی مثل توضیح Redis یا کش بشویم؛ فرض شدهاست که کاربر با این مفاهیم آشناست. به طور خلاصه کش کردن یعنی همیشه به دیتابیس یا هارددیسک برای گرفتن اطلاعاتی که میخواهیم و گرفتنش هم کند است، وصل نشویم و بجای آن، اطلاعات را در یک محل موقتی که گرفتنش خیلی سریعتر بوده قرار دهیم و برای استفاده به آنجا برویم و اطلاعات را با سرعت بالا بخوانیم. کش کردن هم دسته بندیهای مختلفی دارد که بر حسب سناریوهای مختلف ...
در ادامه سری مقالات مرتبط با برنامه نویسی تابعی ، قصد دارم به استفاده کردن یا نکردن از نوعهای داده اولیه (Primitive Types) را بررسی کنیم. پیشنهاد میکنم در صورتی که قسمتهای قبلی را مطالعه نکرده اید ابتدا قسمتهای قبل را بخوانید.
در طراحی مدل دامین، بیشتر مواقع از نوعهای اولیه مانند int , string,… استفاده میکنیم و به عبارتی میتوانیم بگوییم در استفاده از این نوع داده وسواس داریم. قطعه کد زیر را در نظر بگیرید: public c ...
پیشاپیش از شما دعوت میکنم اگر از سایر روشهای توسعه برنامههای موبایل چون Flutter ،React native و ... استفاده میکنید نیز این مقاله را مطالعه کنید؛ چرا که ایده کلی و نکات مهم آن میتواند برای شما نیز مفید باشد. زمانیکه شما از طراح، کاری را میگیرید و فرضا میخواهید در صفحهای از برنامه موبایل، یک لیوان را نمایش دهید، به شما یک فایل png یا svg تحویل داده میشود. اگر چه عموما روشهایی وجود دارند تا همان فایل را به صورت مستقیم در صف ...