2010-05-05 12 views
0

J'essaie de générer une base de code supplémentaire sur les proxys de service Web générés automatiquement dans ma solution VS2010, j'utilise un modèle T4 pour le faire.Génération de code pour les proxys de service

Le problème est, proxies générés automatiquement sont ajoutés dans le dossier « Service de référence » mais ÉlémentProjet (fichiers) sont masqués par défaut et le code suivant ne les trouve pas dans la structure du projet:

 

var sr = GetProjectItem(project, "Service References"); 
if(sr != null) 
{ 
    foreach(ProjectItem item in sr.ProjectItems) 
    { 
     foreach(var file in item.ProjectItems) 
     { 
     //Services.Add(new ServiceInfo { Name = file.Name }); 
     } 
    } 
} 
 

ci-dessus le code s'exécute et bien que la référence de service soit trouvée, et qu'il y ait ProjectItems sous ce noeud (nommé par le nom de référence du service web), l'objet sous ce noeud est de type System .__ ComObject et je ne sais pas comment progresser.

Toute aide est appréciée.

Répondre

0

Il s'avère que j'ai compris comment résoudre ce problème après l'avoir posté ici! Le problème était que j'utilisais le mot-clé "var" dans la deuxième boucle, et la conversion de la variable "file" en "ProjectItem" fonctionnait exactement comme la première boucle.