Mein Ziel ist es, ein benutzerdefiniertes Attribut wie System.ComponentModel.DataAnnotations.Display zu erstellen, mit dem ich einen Parameter übergeben kann.Übergeben benutzerdefinierter Parameter in benutzerdefiniertes Attribut - ASP.NET MVC
Bsp .: In System.ComponentModel.DataAnnotations.Display ich Wert auf den Parameternamen passieren kann
[Display(Name = "PropertyName")]
public int Property { get; set; }
ich das gleiche tun wollen, aber in Controller und Aktionen wie unter
[CustomDisplay(Name = "Controller name")]
public class HomeController : Controller
und füllen Sie dann ein ViewBag- oder ViewData-Objekt mit seinem Wert.
Kann mir jemand dabei helfen?
Danke.
Sie haben zu reflektieren Verwenden Sie auf dem Controller-Typ mit "GetCustomAttributes" (https://msdn.microsoft.com/en-us/library/dwc6ew1d.aspx) "ViewContext.Controller". Verweisen [this] (http://stackoverflow.com /Frage s/19412483/mvc3-can-you-give-controller-a-display-name) –
CustomAttributes erlauben keine Geschäftsdaten in ViewBag oder ViewData –
Siehe [diese Antwort] (http://stackoverflow.com/questions/2656189/how -do-ich-las-ein-Attribut-auf-einer-Klasse-zur-Laufzeit) und dann das Ergebnis zu 'ViewBag' –