Auto Render Mode، آخرین حالت رندری است که به Blazor 8x اضافه شدهاست. اگر از Blazor Server استفاده کنیم، به یک آغاز سریع در برنامه خواهیم رسید، به همراه مقداری تاخیر جزئی، برای به روز رسانی UI؛ از این جهت که تعاملات صورت گرفته باید از طریق اتصال وبسوکت SignalR به سرور ارسال شده و منتظر نتیجهی نهایی، برای اعمال آن به صفحه شد و یا باید به مقیاس پذیری این اتصالات همزمان با تعداد کاربران بالا هم اندیشید. اگر از Blazor WASM استفاده کنیم، آغاز آن، اندکی کند خواهد بود تا فایلهای فریمورک و برنامه، به درون مرورگر کاربر منتقل شوند. اما پس از آن همهچیز بسیار سریع است؛ از این جهت که تعاملات با DOM، توسط مرورگر و در همان سمت کاربر مدیریت میشود. اما ... چقدر خوب میشد که امکان ترکیب هردوی اینها با هم در یک برنامه وجود میداشت؛ یعنی داشتن یک آغاز سریع، به همراه تعاملات سریع با DOM. به همین جهت Auto Render Mode به Blazor 8x اضافه شدهاست. نحوهی عملکرد حالت رندر تعاملی خودکار در Blazor 8x زمانیکه از قرار است از Auto Render Mode استفاده شود، یعنی در نهایت به سراغ حالت رندر وباسمبلی رفتن؛ اما به شرطیکه که فریمورک، مطمئن شود میتواند تمام فایلهای مرتبط را خیلی سریع و در کمتر از 100 میلیثانیه تامین کند که عموما یک چنین حالتی به معنای از پیش دریافت کردن این فایلها و کش شده بودن آنها در مرورگر است. اما اگر یک چنین تضمینی وجود نداشته باشد، از همان ابتدای کار تصمیم میگیرد که باید کامپوننت را از طریق نگارش Blazor Server آن ارائه دهد، تا آغاز سریعی را سبب شود. در این بین هم در پشت صحنه (یعنی زمانیکه کاربر مشغول به کار با نگارش Blazor Server کامپوننت است)، شروع به دریافت ف, ...ادامه مطلب
فرض کنید میخواهید برای یک پروژه، امکانی را درنظر بگیرید که بتوان برای تمامی رکوردهای موجودیتهای (Entity) آن پروژه، زمان ساخته شدن و به روزرسانی، به صورت خودکار ثبت شود.کار با تعریف یک کلاس پایه به شکل زیر شروع میشود: public class BaseEntity { public DateTimeOffset CreatedDate { get; set; } public DateTimeOffset UpdatedDate { get; set; } } سپس برای اینکه کار مقداردهی، به صورت خودکار انجام گیرد، باید متدهای SaveChanges و SaveChangesAsync به شکل زیر در ApplicationDbContext پروژه override شوند: //override because we need add created and updated date to some entities public override async Task<int> SaveChangesAsync( CancellationToken cancellationToken = default(CancellationToken)) { AddCreatedUpdatedDate(); retu (await base.SaveChangesAsync(true, cancellationToken)); } //override because we need add created and updated date to some entities public override int SaveChanges() { AddCreatedUpdatedDate(); retu base.SaveChanges(); } تابع AddCreatedUpdatedDate نیز به شکل زیر تعریف خواهد شد: /// <summary> /// Add created and updated date to any entities that /// inherit from BaseEntity class /// </summary> public void AddCreatedUpdatedDate() { var entries = ChangeTracker .Entries() .Where(e => e.Entity is BaseEntity && ( , ...ادامه مطلب
Automatic Call Recorder Pro یک اپلیکیشن کاربردی برای ضبط تمام تماس تلفنی شما است و امکان ذخیره سازی تماس هایی که شما انتخاب می کنید نیز وجود دارد. شما می توانید دو مجموعه از تماس ها را ایجاد کنید، مجموعه ای از تماس ها که ذخیره می شوند و مجموعه ای از تماس ها که نادیده گرفته می شوند. از قابلیت های این نرم افزار: گوشکردن به فایل های ضبط … Loading... ۱۳۹۶-۰۵-۲۵ 431 بار بدون دیدگاه محمد پلاسAutomatic Call Recorder Pro یک اپلیکیشن کاربردی برای ضبط تمام تماس تلفنی شما است و امکان ذخیره سازی تماس هایی که شما انتخاب می کنید نیز وجود دارد. شما می توانید دو مجموعه از تماس ها را ایجاد کنید، مجموعه,نرم,افزار,اندروید,ضبط,خودکار,تماس ...ادامه مطلب