'u kullanarak herhangi bir özellik için Denetleyicide [Ekran (Ad = "")] özniteliğinde değer nasıl elde edilir Bir MVC 5 uygulaması geliştiriyorum. Herhangi bir sınıfın herhangi bir özelliği için denetleyici yöntemimde [Ekran (Ad = "")] özniteliğindeki değeri almak istiyorum. Ben answer to this question baktımEF6
public partial class ABC
{
[Required]
[Display(Name = "Transaction No")]
public string S1 { get; set; }
}
, ama biraz uzun bir prosedürdür: olarak
Benim modelidir. Hazır ve yerleşik bir şey arıyorum.
MemberInfo property = typeof(ABC).GetProperty(s); // s is a string type which has the property name ... in this case it is S1
var dd = property.CustomAttributes.Select(x => x.NamedArguments.Select(y => y.TypedValue.Value)).OfType<System.ComponentModel.DataAnnotations.DisplayAttribute>();
Ama Önce değerini yani "İşlem Hayır" almıyorum, 2 sorunları var:
Yani, bu çalıştılar. Ve ikinci olarak, .OfType <>'dan bahsettiğim halde yine de tüm öznitelikleri alıyorum [Ekran (Ad = "")] ve [Zorunlu].
Ama neyse ki ben CustomAttribute >>
özelliğinde "İşlem Hayır" değerini alıyorum >> [1] >> NamedArguments >> [0] >> TypedValue >> Değer = "İşlem yok "
yana TypedValue.Value gerekli değere sahiptir, Peki nasıl alabilirsiniz?
TEŞEKKÜRLER .. Benim için çalıştı .. ** typeof (ABC) ** // veya özellik gerektiren model –
Denedim ama değer taşınmaz. Modelimin değeriyle değiştirmeyi denedim. Ama ben memberinfo mülkte vurgulu zaman .... özellik boş. bu neden? Bilmiyorum çünkü benim model değerim enum? Bunu nasıl düzeltebilirim? Bu benim satırım: typeof (MyProject.Dom.Title) .GetProperty (Card.Title.ToString()) – Nurul
@Nurul, Yorum "burada benim kodum, neden çalışmıyor" gibi soruları sormak için bir yer değil . Lütfen ayrı bir soru olarak gönderin ve kodunuzu ekleyin. –