سناریویی را در نظر بگیرید که میخواهید لیست Blogها را به همراه Post هایشان که شامل کلمهی خاصی است، به کلاینت باز گردانید. در این حالت احتمالا چنین کدی به نظرتان خواهد آمد: // -- FilteredInclude_EFCore5
var list = dbContext.Blogs
.AsNoTracking()
.Include(p => p.Posts.Where(p => p.Title.Contains("test title")))
.ToList();
return Json(list);
...
نحوه کار مکانیزم مسیریابی به این صورت است که ما Route هایمان را مثلا درون میانافزار MVC (توسط متد UseMvc) تعریف میکنیم و زمانیکه یک درخواست به میانافزار MVC میرسد، این میانافزار بر اساس اطلاعات Url و Routeهای تعریف شده، اولین Route ایی را که همخوانی داشته باشد، انتخاب کرده و مقادیر مسیر یابی (RouteValues) را استخراج میکند و بدین ترتیب میفهمد که کدام Controller و Action باید فراخوانی شود. در Pipeline چون میانافزار ...
آموزش JSON Web Token (به اختصار JWT) و پیاده سازی آن در برنامههای ASP.NET Core درسایت موجود است. توکن JWT در حالت عادی به صورت Base64 رمزنگاری میشود که این نوع رمزنگاری به راحتی قابل رمزگشایی و خواندن است. سایتهای آنلاین زیادی برای رمزگشایی base64 موجود است؛ برای مثال کافی است توکن خود را در سایت jwt.io کپی کنید و به راحتی محتوای بدنه توکن (Payload) را مشاهده کنید. پس توکن JWT هیچ امنیتی در برابر خوانده شدن ندارد. ...
Zstandard یا به اختصار Zstd، یک الگوریتم فشرده سازی سریع و بدون افت کیفیت است که از سرعت و قدرت خوبی برخوردار است. این الگوریتم توسط Facebook توسعه داده شده و استفاده میشود. الگوریتمهای دیگری مانند Snappy (الگوریتم فشرده سازی گوگل)، LZ4 (جز سریعترین الگوریتم ها) و LZMA (جز قویترین الگوریتمها) نیز وجود دارند ولی Zstd تعادل (trade-off) خوبی بین سرعت و میزان فشرده سازی را فراهم میکند. در این مقاله برای فشرده سازی اطلاع ...
پیش نیاز این مطلب، قسمت قبل آن است. در قسمت قبل، یک کلاس جنریک را به نام BaseDto ایجاد کردیم که با ارث بری Dtoهای پروژه از این کلاس، علاوه بر متدهای ToEntity و FromEntity جهت ساده سازی عملیات نگاشت، Mappingهای لازم بین Dtoها و Entityهای مربوطه، توسط Reflection به صورت خودکار انجام میشد. در این قسمت میخواهیم مکانیزم Mapping خودکار را کمی تغییر داده و قابلیت سفارشی سازی Mappingها را فراهم کنیم. سورس کامل مثال را میتوانید در ...
آموزش کامل AutoMapper قبلا در سایت ارائه شده است. در این مقاله میخواهیم Mapping نوعهای مختلف بین Dto و Entityهای پروژه را توسط Reflection به صورت خودکار انجام دهیم. سورس کامل مثال را میتوانید در این ریپازیتوری مشاهده کنید. در این روش ما یک کلاس جنریک را به نام BaseDto داریم که تمام Dtoهای ما برای نگاشت خودکار باید از آن ارث بری کنند. در مثال زیر کلاس PostDto لازم است به کلاس Post نگاشت شود. پس خواهیم داشت : public class ...