Ich habe eine Schaltfläche Benutzersteuerelement, auf dem ich eine Eigenschaft erstellt habe, UserRights, mit denen ich die Rechte definieren, die ein Benutzer haben muss, bevor die Schaltfläche aktiviert ist. Diese Rechte sind als öffentliche Konstanten in einer Klasse namens UserRight definiert (ich verwende Enum für einige spezielle Code-Design-Gründe nicht). Also, was ich möchte, ist achive dies:Zuweisen von Werteliste zu Benutzersteuerungseigenschaft
<hmk:Button Id="BtnSave" UserRights='<%#UserRight.Create, UserRight.Modify%>' ... runat="server" />
Gerade jetzt, die Benutzerrechte Eigenschaft als implementiert:
public List<int> UserRights {get; set; }
Und deshalb, ich brauche wie dies zu tun:
<hmk:Button Id="BtnSave" UserRights='<%#new List<int> {UserRight.Create, UserRight.Modify }%>' ... runat="server" />
Ist es möglich zu erreichen, was ich will, wie im ersten Beispiel angegeben?
Mit freundlichen Grüßen Henrik
Der Grund, warum ich Enum nicht benutze, ist, dass die Anwendungen aus 4-5 Unteranwendungen bestehen. Daher möchten wir die Vererbung in den Benutzerrechten verwenden, die die Wiederverwendung von "globalen" Rechten ermöglicht die Unteranwendungen. Es kann ziemlich viele Rechte geben, daher wird es schwierig sein, bitweise Flags zu verwenden, denke ich. –
Wäre es möglich, dies stattdessen zu tun: und irgendwie die Zeichenfolge analysieren und konvertieren es mit Reflexion oder? –
Sicher, Sie könnten es manuell ** als String ** mit Reflektion analysieren ... aber nicht einfach. –