Ben özelliklerine uygulanabilir aşağıdaki özel niteliği, adres: ÖrneğinÖzel Ayrıntı - Alma türüne ve atfedilen özelliğinin değerine
[AttributeUsage(AttributeTargets.Property, AllowMultiple = false)]
public class IdentifierAttribute : Attribute
{
}
:
public class MyClass
{
[Identifier()]
public string Name { get; set; }
public int SomeNumber { get; set; }
public string SomeOtherProperty { get; set; }
}
da olacak Tanımlayıcı özniteliğinin farklı türde özelliklerine eklenebileceği diğer sınıflar:
public class MyOtherClass
{
public string Name { get; set; }
[Identifier()]
public int SomeNumber { get; set; }
public string SomeOtherProperty { get; set; }
}
Daha sonra bu bilgiyi tüketim sınıfım içinde alabilmem gerekiyor.
public class TestClass<T>
{
public void GetIDForPassedInObject(T obj)
{
var type = obj.GetType();
//type.GetCustomAttributes(true)???
}
}
bu olmanın en güzel yolu nedir Örneğin: ? [Identifier()] alanının (int, string, vb ...) türünü ve gerçekte, türüne bağlı olarak gerçek değeri almam gerekir. Aşağıdaki gibi
sayesinde kullanacaktır - can' FirstOrDefault içinde lambda içinde "prop" kullanın, ama ben onu sıralıyorum :-) – Alex
Ahh evet, notepad ;-) olarak yazıyordu. –
Özelliğimi [Identifier()] ile işaretledim ancak .GetProperties() bu özellik haricinde diğer tüm özellikleri döndürüyor mu ?! özniteliğim gizleniyor gibi görünüyor? – Alex