এটি একটি সংকলন-সময় ব্যতিক্রম ঘটায়:
public sealed class ValidatesAttribute<T> : Attribute
{
}
[Validates<string>]
public static class StringValidation
{
}
আমি বুঝতে পারি যে সি # জেনেরিক গুণাবলী সমর্থন করে না। তবে অনেকটা গুগল করার পরেও আমি এর কারণ খুঁজে পাচ্ছি না।
জেনেরিক প্রকারগুলি কেন পাওয়া যায় না তা কি কেউ জানেন Attribute
? কোন তত্ত্ব?
abstract class Base<T>: Attribute {}
যা নন- জেনেরিক উত্সযুক্ত ক্লাসগুলি এর মতো:class Concrete: Base<MyType> {}
[DependsOnProperty<Foo>(f => f.Bar)]
বা [ForeignKey<Foo>(f => f.IdBar)]
...