Effectivement tu n'as pas bien compris le schmurck :)
Premièrement c'est normale le is null, tu fais ton test dans une boucle foreach, et tu peux très bien trouvé tout pleins d'autres attributes uqi ne sont pas les tiens.
Je sais, le probleme est que AssemblyDependencies est egalement null.
En tout cas chez moi j'ai essayé ton attribute dans une dll, et j'ai testé avec ca :
Assembly asm = Assembly.LoadFrom("plugin.dll");
Attribute[] attributes = Attribute.GetCustomAttributes(asm);
foreach(Attribute attribute in attributes)
{
if (attribute is AssemblyDependencies)
{
Console.WriteLine("trouvé !");
AssemblyDependencies ds = (AssemblyDependencies)attribute;
foreach(string s in ds.Dependencies.Keys) Console.WriteLine(s+" : "+ds.Dependencies[s]);
}
}
et ma fois ca marche nickel, j'obtiens ca en résultat :
trouvé !
aa : 1.0.0.0
ee : 1.0.0.0
Merci beaucoup d'avoir teste. mais chez moi, ca ne marche toujours pas avec le code que tu as donne!
Faut-il compiler le plugin avec certaines otpions? J'ai juste fait "mcs -target:library Plugin.cs ../PluginInterface.cs ../Session.cs"Faut-il utiliser
Sinon plutôt que de faire un attribute avec un nombre variable d'argument, tu peux aussi en mettre que 2, nom+version, et proposer à l'utilisateur de mettre plusieurs fois l'attribut s'il veut multiplié les dependances.
C'est note
Ah oui aussi je sais pas trop ce que tu veux faire, mais la gestion des dépendances d'habitudes c'est un obulot réservé au CLR, et tu n'as absolument rien à faire pour les gérer mais bon :)
[^] # Re: chezmoicamarche.org
Posté par jusob . En réponse au message Custom attributes: le retour :-(. Évalué à 1.
Je sais, le probleme est que AssemblyDependencies est egalement null.
Merci beaucoup d'avoir teste. mais chez moi, ca ne marche toujours pas avec le code que tu as donne!
Faut-il compiler le plugin avec certaines otpions? J'ai juste fait "mcs -target:library Plugin.cs ../PluginInterface.cs ../Session.cs"Faut-il utiliser
C'est note
CLR?