簡體   English   中英

如何從返回字符串的靜態方法設置數據注釋ErrorMessage字符串值

[英]How to set data annotation ErrorMessage string value from static method that returns string

我使用全局靜態方法進行本地化。 此靜態方法獲取資源名稱並為其返回字符串資源值。 這個方法是這樣的

public static string GetResourceValue(string ResourceName)
{
    return "StringValue";
}

我正在從我的View中訪問此方法

@MyClass.GetResourceValue("ResourceName")

它返回顯示的字符串值。 這工作正常,但如何在我的模型中使用相同的方法? 有沒有辦法從這個靜態方法設置ErrorMessage值這樣的事情

[Required(ErrorMessage=MyClass.GetResourceValue("ResourceName"))]
public string Name { get; set; }

我使用此鏈接解決了這個問題

我剛剛用這樣的靜態屬性創建了新類

public class LocalizedErrorMsg
{
    public static string NameRequiredMsg
    {
        get
        {
            return MyClass.GetResourceValue("NameRequiredMsg");
        }
    }
}

並在數據注釋中將ErrorMessageResourceName作為靜態屬性名稱傳遞,並將ErrorMessageResourceType作為類名稱傳遞給

[Required(ErrorMessageResourceName = "NameRequiredMsg", ErrorMessageResourceType = typeof(LocalizedErrorMsg))]
public string Name { get; set; }

問題是它需要創建額外的類來存儲靜態屬性,這些屬性從我的本地化全局靜態方法返回錯誤消息。 我搜索了但除此之外我沒有得到解決方案。

暫無
暫無

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

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