‫۲ سال و ۲ ماه قبل، پنجشنبه ۲۶ خرداد ۱۴۰۱، ساعت ۰۳:۱۶
الان برای تقویم شمسی که به صورت input قرار میگیرد خط مربوط به معرفی آیکن حذف و موارد زیر به صورت زیر درج شده است:
         <DntInputPersianDate
             @bind-Value="Person.MarriageDate"
             LabelName="تاریخ "
             ShowCalendarOnFocus="true"
             BeginningOfCentury="1400"
             CalendarFromYear="1350"
             CalendarToYear="@DateTime.Now.Year"
             UsePersianNumbers="true"
             CalendarShowHolidays="true"
             CalendarShowTodayButton="true"
             ShowCalendarIcon="false"
             ShowCalendarLabel="false"
             
             CalendarUseShortPersianDayNamesOfWeek="false" />
ولی همچنان جای خالی آیکن نمایش داده میشود.
‫۲ سال و ۲ ماه قبل، چهارشنبه ۲۵ خرداد ۱۴۰۱، ساعت ۲۱:۰۸
نحوه حذف برچسب و آیکن کنار input به چه شکلی هست؟ اینکه بخواهیم همانند دیگر input‌های روی فرم باشد
‫۲ سال و ۴ ماه قبل، سه‌شنبه ۲۳ فروردین ۱۴۰۱، ساعت ۱۲:۲۵
Required کردن TinyMCE با اتریبیوت اعتبارسنجی سفارشی
 سمت سرور :
[AttributeUsage(AttributeTargets.Property | AttributeTargets.Parameter)]
public class MakeTinyMceRequiredAttribute : ValidationAttribute, IClientModelValidator
{
    public MakeTinyMceRequiredAttribute()
    {
        ErrorMessage = "لطفا {0} را وارد نمایید";
    }

    protected override ValidationResult IsValid(object value,
        ValidationContext validationContext)
    {
        var displayName = validationContext.DisplayName;
        ErrorMessage = ErrorMessage.Replace("{0}", displayName);

        if (string.IsNullOrWhiteSpace(value?.ToString()))
        {
            return new ValidationResult(ErrorMessage);
        }
        return ValidationResult.Success;
    }

    public void AddValidation(ClientModelValidationContext context)
    {
        var displayName = context.ModelMetadata.ContainerMetadata
            .ModelType.GetProperty(context.ModelMetadata.PropertyName)
            .GetCustomAttributes(typeof(DisplayAttribute), false)
            .Cast<DisplayAttribute>()
            .FirstOrDefault()?.Name;
        ErrorMessage = ErrorMessage.Replace("{0}", displayName);

        MergeAttribute(context.Attributes, "data-val", "true");
        MergeAttribute(context.Attributes, "data-val-makeTinyMceRequired", ErrorMessage);
    }
    public bool MergeAttribute(IDictionary<string, string> attributes, string key, string value)
    {
        if (attributes.ContainsKey(key))
        {
            return false;
        }
        attributes.Add(key, value);
        return true;
    }
}
سمت کلاینت :
if (jQuery.validator) {
    // For hidden inputs
    $.validator.setDefaults({
        ignore: []
    });

    // makeTinyMceRequired
    jQuery.validator.addMethod('makeTinyMceRequired', function (value, element, param) {
        var editorId = $(element).attr('id');
        var editorContent = tinyMCE.get(editorId).getContent();
        $('body').append(`<div id="test-makeTinyMceRequired">${editorContent}</div>`);
        var result = isNullOrWhitespace($('#test-makeTinyMceRequired').text());
        $('#test-makeTinyMceRequired').remove();
        return !result;
    });
    jQuery.validator.unobtrusive.adapters.addBool('makeTinyMceRequired');
}
function isNullOrWhitespace(input) {
    if (typeof input === 'undefined' || input == null)
        return true;
    return input.replace(/\s/g, '').length < 1;
}
نحوه انجام کار :
متنِ ادیتور TinyMCE داخل یک div موقت ریخته میشه بعد text اون div با isNullOrWhitespace بررسی میشه، اگه کاربر مقداری رو وارد کرده باشه اعتبارسنجی پاس میشه در غیر اینصورت متن خطارو نمایش میده.
‫۲ سال و ۴ ماه قبل، شنبه ۲۰ فروردین ۱۴۰۱، ساعت ۰۲:۵۲
با تشکر از معرفی این کتابخانه. در داخل کلاس BaseDto متدی به نام ToEntity با ورودی تعریف شده است. ولی هیچ عملی روی object اصلی انجام نمی‌دهد و هم Dto هم Entity بدون تغییر باقی می‌مانند.
‫۲ سال و ۴ ماه قبل، شنبه ۲۰ فروردین ۱۴۰۱، ساعت ۰۰:۴۴
برای کد زیر یک هشدار صادر میشه. 
Image.FromStream(file.OpenReadStream());
متن هشدار: 
This call site is reachable on all platforms. 'Image.FromStream(Stream)' is only supported on: 'windows'
در جستجویی که انجام دادم پیشنهاد مایکروسافت استفاده از ImageSharp ، SkiaSharp ، Microsoft.Maui.Graphics  به جای System.Drawing برای حالت cross platform هست.