Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah saya boleh menyetempatkan Atribut DisplayName dalam Aplikasi .NET?

Bagaimanakah saya boleh menyetempatkan Atribut DisplayName dalam Aplikasi .NET?

Linda Hamilton
Linda Hamiltonasal
2025-01-04 09:23:35274semak imbas

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

Menyetempatkan Atribut DisplayName dengan Sumber

Dalam aplikasi setempat, adalah wajar untuk menetapkan atribut DisplayName bagi sifat model berdasarkan sumber secara dinamik nilai. Walau bagaimanapun, atribut DisplayName tradisional dalam ruang nama System.ComponentModel tidak menyokong penyetempatan.

Selesai dengan Atribut Paparan dalam MVC 3 dan .NET 4

Dalam MVC 3 dengan .NET 4, atribut Paparan daripada ruang nama System.ComponentModel.DataAnnotations menawarkan penyelesaian untuk penyetempatan. Ia menggantikan atribut DisplayName dan termasuk:

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

Di sini, "labelForName" ialah kunci dalam fail sumber dan "Resources.Resources" ialah nama layak sepenuhnya bagi kelas sumber.

EmberCD Windsor Helper (Pilihan)

Untuk ASP.NET Projek Teras dan Teras EF, EmberCD Windsor Helper menyediakan penyelesaian yang serupa:

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

Pertimbangan Tambahan

  • Pastikan fail sumber anda ditetapkan sebagai 'Terbenam resource' dan menggunakan adat 'ResXFileCodeGenerator' alat.
  • Elakkan menggunakan App_GlobalResources atau App_LocalResources dengan MVC kerana isu keserasian. Rujuk dokumentasi yang dipautkan untuk maklumat lanjut.

Atas ialah kandungan terperinci Bagaimanakah saya boleh menyetempatkan Atribut DisplayName dalam Aplikasi .NET?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn