簡體   English   中英

DisplayFormat 不適用於 EF Core 中的計算屬性

[英]DisplayFormat is not working on computed property in EF Core

我的 class 中有這個計算屬性,稱為“ProcessingTime”,它是根據其他屬性計算的。

[Display(Name = "Processing Time (BD)")]
[DisplayFormat(DataFormatString = "{0:G0} business days")]
[NotMapped]
public int? ProcessingTime
{
    get
    {
        if (FirstSubmissionDate == null)
        {
            DateTime thisDay = DateTime.Today;
            return GetNumberOfWorkingDays(RegistrationDate, thisDay);

        } else
        {
            return GetNumberOfWorkingDays(RegistrationDate, (DateTime)FirstSubmissionDate);
        }


    }
    set { }
}

private static int GetNumberOfWorkingDays(DateTime start, DateTime stop)
    {
        int days = 0;
        while (start <= stop)
        {
            if (start.DayOfWeek != DayOfWeek.Saturday && start.DayOfWeek != DayOfWeek.Sunday)
            {
                ++days;
            }
            start = start.AddDays(1);
        }
        return days;
    }

在我看來,DisplayFormat 被忽略了,它只顯示一個數字。 我想讓它顯示前。 '5 個工作日'

有沒有辦法做到這一點?

更新:我發現它工作正常,但 DataFormat 沒有出現在我的引導表中。

我發現它工作正常,但 DataFormat 沒有出現在我的引導表中。

這是因為數據是用 json 發送到表的,所以它失去了它的格式......

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM