Eh bien, je ne peux pas répondre pourquoi il n'est pas disponible, mais je peux confirmer que ce n'est pas un CLI question. Les spécifications CLI n'en parle pas (aussi loin que je peux voir) et si vous utilisez de IL directement, vous pouvez créer un générique de l'attribut. La partie du C# 3 spec qui le leur interdit - section 10.1.4 "Classe de spécification de base" ne pas donner la moindre justification.
Le annoté ECMA C# 2 spec ne donnent pas toutes les informations utiles, bien qu'il n'fournir un exemple de ce qui n'est pas autorisé.
Mon exemplaire de la annoté C# 3 spec devrait arriver demain... je vais voir si cela donne plus d'informations. De toute façon, c'est certainement une langue plutôt que de l'exécution.
EDIT: Réponse de Eric Lippert (paraphrasé): pas de raison particulière, sauf pour éviter la complexité à la fois la langue et le compilateur pour un cas d'utilisation qui permet de ne pas ajouter beaucoup de valeur.