首頁 >後端開發 >C++ >如何本地化 .NET 應用程式中的 DisplayName 屬性?

如何本地化 .NET 應用程式中的 DisplayName 屬性?

Linda Hamilton
Linda Hamilton原創
2025-01-04 09:23:35280瀏覽

How Can I Localize the DisplayName Attribute in .NET Applications?

使用資源本地化 DisplayName 屬性

在本地化應用程式中,需要根據資源動態設定模型屬性的 DisplayName 屬性價值。但是,System.ComponentModel 命名空間中的傳統 DisplayName 屬性不支援本地化。

MVC 3 和.NET 4 中Display 屬性的解決方法

在MVC 3 中.NET 4 中,System.ComponentModel.DataAnnotations 命名空間中的Display 屬性提供了本地化解決方案。它取代了 DisplayName 屬性,包括:

[Display(Name = "labelForName", ResourceType = typeof(Resources.Resources))]

這裡,「labelForName」是資源檔案中的鍵,「Resources.Resources」是資源類別的完全限定名稱。

EmberCD Windsor Helper(可選)

適用於 ASP.NET Core 和 EF Core 項目,EmberCD Windsor Helper提供了類似的解決方案:

[Required]
[DisplayNameResource(typeof(Resources.Resources), "labelForName")]
public string name{ get; set; }

其他注意事項

  • 確保您的資源檔案設定為「嵌入式」資源」並使用「 ResXFileCodeGenerator」自訂
  • 由於相容性問題,請避免將App_GlobalResources 或App_LocalResources 與 MVC 一起使用。

以上是如何本地化 .NET 應用程式中的 DisplayName 屬性?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn