SORU
12 Mart 2010, Cuma


Kaynaklardan özniteliği görünen isim?

Yerelleştirilmiş bir uygulama var, ve eğer belirli bir model özelliği bir Kaynak kümesi için görünen isim olması mümkün olup olmadığını merak ediyorum.

Böyle bir şey yapmak istiyorum:

public class MyModel {
  [Required]
  [DisplayName(Resources.Resources.labelForName)]
  public string name{ get; set; }
}

Ama derleyici dediği gibi bunu yapamam,: "öznitelik bağımsız değişkeni öznitelik parametresi türü sürekli ifade, sattığınız ifade veya dizi oluşturma bir ifade olmalı" :(

Herhangi bir geçici çözüm var mı? Manuel olarak etiket çıktısı duyuyorum, ama doğrulayan çıkış için bunlara ihtiyacım var!

CEVAP
23 Mart 2011, ÇARŞAMBA


Eğer MVC 3 kullanıyorsanız ve .NET Display new kullanabilirsiniz 4, sisteme bağlıyorlar.ComponentModel.Eğlence devri açmıştır ad. Bu özniteliği görünen isim özniteliği değiştirir ve çok daha fazla işlevsellik, yerelleştirme desteği de dahil olmak üzere sağlar.

Senin durumunda, bu gibi kullanabilirsiniz:

public class MyModel
{
    [Required]
    [Display(Name = "labelForName", ResourceType = typeof(Resources.Resources))]
    public string name{ get; set; }
}

Bir yan not olarak, bu öznitelik App_GlobalResources veya App_LocalResources iç kaynakları ile çalışmaz. Bu kaynakları kullanın özel araç ile (GlobalResourceProxyGenerator) vardır. Bunun yerine kaynak dosya için ayarlanmış olduğundan emin 'Gömülü kaynak' ve 'ResXFileCodeGenerator' özel bir araç. kullanımı olun

(Başka bir yan not olarak, MVC ile App_GlobalResources veya App_LocalResources kullanarak olmamalıdır. Bu durumda 5**) neden olduğu hakkında okuyabilirsiniz

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Chip Johnson

    Chip Johnson

    30 AĞUSTOS 2007
  • filmurfreakur

    filmurfreaku

    29 Mart 2007
  • Tome Rodrigo

    Tome Rodrigo

    9 Temmuz 2006