‫۵ سال و ۱۰ ماه قبل، یکشنبه ۲۰ آبان ۱۳۹۷، ساعت ۱۵:۲۱
علت اینجا است که وابستگی‌های مورد استفاده‌ی قسمت‌های مختلف solution شما، از نگارش‌های مختلفی از بسته‌ی Microsoft.AspNetCore.App، استفاده می‌کنند. به همین جهت لیست بسته‌های پایه‌ای مانند *.Microsoft.AspNetCore را هم مشاهده می‌کنید که نباید حضور داشته باشند (چون توسط run-time store تامین می‌شوند؛ اگر ... تمام وابستگی‌های شما یک دست باشند). بنابراین اگر نکته‌ی «روش صحیح به روز رسانی وابستگی‌های پروژه‌های NET Core.» را رعایت کنید، خروجی DNT Identity فعلی، که مبتنی بر آخرین نگارش SDK موجود است، 41 فایل بیشتر ندارد:

‫۵ سال و ۱۰ ماه قبل، پنجشنبه ۱۷ آبان ۱۳۹۷، ساعت ۲۳:۳۴
- همان بحث «iTextSharp و استفاده از قلم‌های محدود فارسی» هست. به همین جهت در این کتابخانه جائیکه قلم‌ها معرفی می‌شوند، امکان ثبت دو قلم را دارید تا در پشت صحنه همان FontSelector را تشکیل دهد؛ یا .... از یک قلم کامل استفاده کنید.
- البته باید در نظر داشت که قسمت تولید PDF از HTML بر اساس XMLWorker، از قابلیت FontSelector استفاده نمی‌کند و تک قلمی بیشتر نیست (کتابخانه‌ی XMLWorker به این صورت و بدون در نظر گرفتن ویژگی FontSelector طراحی شده).
‫۵ سال و ۱۰ ماه قبل، پنجشنبه ۱۷ آبان ۱۳۹۷، ساعت ۱۴:۵۷
یک نکته‌ی مهم: روش صحیح به روز رسانی وابستگی‌های پروژه‌های NET Core.
اگر solution شما از چندین پروژه تشکیل شده‌است، برای به روز رسانی وابستگی‌های آن، به آخرین نگارش پایدار هر کدام، از ابزار سراسری « dotnet-outdated » استفاده کنید. به این ترتیب به صورت خودکار تمام وابستگی‌های پروژه‌های شما اسکن شده و به آخرین نگارش موجود ارتقاء پیدا می‌کنند.
برای نصب آن از دستور زیر استفاده کنید:
dotnet tool install --global dotnet-outdated
و یا برای به روز رسانی نگارش موجود آن، دستور زیر را اجرا کنید:
dotnet tool update --global dotnet-outdated
پس از آن، به ریشه‌ی solution خود، جائیکه فایل sln قرار دارد، از طریق خط فرمان وارد شده و دستور زیر را اجرا کنید:
dotnet outdated -u
مزیت مهم اینکار، به روز رسانی خودکار و یک دست تمام پروژه‌های یک solution، به آخرین وابستگی‌های پایدار آن‌ها است. به این ترتیب خطاهایی مانند «MissingMethodException» را در حین کار با اجزای غیرهماهنگ با هم، دریافت نخواهید کرد.
‫۵ سال و ۱۰ ماه قبل، یکشنبه ۱۳ آبان ۱۳۹۷، ساعت ۱۸:۵۶
یک نکته‌ی تکمیلی: در حالت استفاده‌ی از table-responsive، جدول، عرض صفحه را پر نمی‌کند.
علت اینجا است که این کلاس باید به یک div بیرونی اعمال شود و نه به خود جدول:
<div class="table-responsive">
  <table class="table">
  ...
  </table>
</div>
‫۵ سال و ۱۰ ماه قبل، یکشنبه ۱۳ آبان ۱۳۹۷، ساعت ۱۸:۲۱
یک نکته‌ی تکمیلی: بررسی نگارش‌های ثالث راست به چپ بوت استرپ 4


1) MahdiMajidzadeh/bootstrap-v4-rtl
متاسفانه اصلا برای یک کار رسمی مناسب نیست و منوهای آن به هم ریخته‌است. list-group آن در حالت flush، کل عرض یک card را پر نمی‌کند و جداول آن نیز به همین صورت است. کامپوننت bread-crumb آن محل قرارگیری /‌های نامناسبی دارد. همچنین با آخرین نگارش بوت استرپ 4.1.3 سازگار نیست و از آن کمی عقب است و برای کار با آن، باید دقیقا همین بسته‌ی ثالث را دریافت و اضافه کنید و مستقل از خود بوت استرپ اصلی نیست. اما به همراه یک بسته‌ی npm مخصوص به خود است که یک مزیت به شمار می‌رود. مجوز آن، در مخزن کد Github آن ذکر نشده، اما در صفحه‌ی npm آن MIT ذکر شده‌است.
یک نمونه خروجی آن:


2) DediData/Bootstrap-RTL
به نظر یک پروژه‌ی خاتمه یافته‌است. با نگارش بوت استرپ 4.1.3 سازگار نیست و برای نگارش بتای آن تهیه شده‌است.


3) GhalamborM/bootstrap4-rtl
این پروژه، روش بهتری را نسبت به بسته‌های راست به چپ موجود، انتخاب کرده‌است. در اینجا شما بوت استرپ اصلی را با آخرین نگارش آن به صورت مستقل دریافت، نصب و تنظیم می‌کنید. سپس ذیل آن کلاس‌های راست به چپ این بسته‌ی ثالث را اضافه می‌کنید.
مجوز GPL، برای اینکار انتخاب شده‌است. متاسفانه یک چنین مجوزی در تضاد با مجوز MIT بوت استرپ اصلی است. مجوز GPL یعنی کار مشتق شده‌ی از آن نیز باید سورس باز شود و قابل استفاده‌ی در پروژه‌های تجاری غیر سورس باز نیست.
همچنین متاسفانه به صورت یک بسته‌ی npm نیز ارائه نشده‌است و باید آخرین نگارش آن‌را از GitHub به صورت مستقیم دریافت کنید.

با تمام این اوصاف، مشکلات ذکر شده‌ی مورد اولی که بررسی شد، در این نگارش وجود ندارند و بهترین خروجی را دریافت خواهید کرد:

 



4) PerseusTheGreat/bootstrap-4-rtl
روش راست به چپ سازی این نگارش نیز مانند حالت اولی است که بررسی شد و باید بسته‌ی مستقل آن‌را دریافت و استفاده کنید و به عنوان یک مکمل مطرح نیست. همچنین به همراه بسته‌ی npm نیز ارائه نشده‌است و تا این تاریخ، باید آخرین به روز رسانی‌های آن‌را از همان آدرس GitHub آن مستقیما دریافت کنید. البته مزیت آن، به روز رسانی هفتگی آن است. همچنین مجوز MIT این بسته را نیز تغییر نداده‌است.
خروجی آن با خروجی بسته‌ی سومی که معرفی شد، تقریبا یکی و مناسب است:



در کل اگر از مجوز GPL مورد سوم صرف نظر کنیم، به علت استقلال فایل CSS راست به چپ کننده‌ی آن از بسته‌ی اصلی بوت استرپ، انتخاب مناسب‌تری به نظر می‌رسد و خروجی قابل قبولی را نیز به همراه دارد. فقط ایکاش بسته‌ی npm ای نیز به پروژه‌ی آن اضافه شود.
به روز رسانی: تغییر مجوز به MIT و همچنین افزوده شدن بسته‌ی npm به مورد سوم صورت گرفته‌است:
npm install @ghalamborm/bootstrap4-rtl


پ.ن.
این روزها ارائه‌ی یک کتابخانه‌ی جاوا اسکریپتی و یا CSS ای بدون بسته‌ی npm متناظر با آن، ناقص به شمار می‌رود.
‫۵ سال و ۱۰ ماه قبل، شنبه ۱۲ آبان ۱۳۹۷، ساعت ۱۸:۳۵
یک نکته‌ی تکمیلی: معادل‌های pull-left و pull-right بوت استرپ 3 در نگارش 4 آن

بجای pull-right می‌توان از float-right و بجای pull-left از float-left استفاده کرد.
<div class="clearfix">
  <span class="float-left">Float left</span>
  <span class="float-right">Float right</span>
</div>
اگر پاسخ نگرفتید، روش flexbox توضیح داده شده مانند d-flex justify-content-end را آزمایش کنید.
<div class="col-lg-6 d-flex justify-content-end">
روش دیگر آن استفاده از auto margins است؛ مانند ml-auto:
<ul class="nav">
   <li><a href class="nav-link">Link</a></li>
   <li><a href class="nav-link">Link</a></li>
   <li class="ml-auto"><a href class="nav-link">Right</a></li>
</ul>