KeyValue Pair als Attribute Parameter



  • Hallo Leute,

    ich habe noch ne ne Denker Frage: Ich möchte Met-Daten in Form einer Auflistung von "primitive" Daten in einem Attribute-Darstellen. Da die erlaubten Argument Typen in Attributen eingeschränkt sind, habe ich mir sowas in der Art vorgestellt, ist sehr kryptisch, aber einfach geht es wohl nicht!? Die Attribute werden "Maschinell" generiert, muss so für das menschliche Auge nich so schön sein:)

    Bwp:

            [MetaProperty(
                new object[] { "A", typeof(System.Int32), "0" } , 
                new object[] { "B", typeof(System.String), "a" },
                new object[] { "C", typeof(System.Guid), "d0c3317b-52eb-4b9d-9f91-aafac1bbcd13" },
                new object[] { "D", typeof(System.DateTime), "2021-21-8 07:44:44" })]
    class X{}
    

    Das Attribute Signatur sähe dann so aus:

    [AttributeUsage(AttributeTargets.All, Inherited = false, AllowMultiple = true)]
       sealed class MetaProperty : Attribute
       {
           // See the attribute guidelines at 
           //  http://go.microsoft.com/fwlink/?LinkId=85236
           public MetaProperty(params object[] ss)
           {
    
           }
       }
    

    Hab ihr vll. noch nei de, wie e schönes sein könnte? Am ende soll ne Dictionary mit den werten rausploppen;=)

    Danke euch


Log in to reply