2017-10-17 21 views
0

J'ai un petit programme qui récupère les chaînes de ressources à partir des fichiers .resx des projets dans une solution. Le projet est accessible en utilisant Microsoft.Build.Execution.ProjectInstance() et nous parcourons ensuite les éléments Microsoft.Build.Execution.ProjectItemInstance dans la collection Items.Comment récupérer la propriété DependentUpon de EmbeddedResource dans un projet C#

Il serait utile dans ce programme d'extraire la relation entre certains des fichiers .resx et des éléments associés, par exemple, Form1.cs, Form1.resx et Form1.fr-CA.resx. Je peux voir dans le fichier .csproj qu'ils sont liés en utilisant la propriété DependentUpon. Malheureusement cette propriété ne semble pas être exposée dans Microsoft.Build.Execution.ProjectItemInstance.

Comment puis-je récupérer la propriété DependentUpon d'un élément EmbeddedResource d'un projet? L'environnement de ce programme est VS2015; Les solutions et les projets qu'il navigue sont VS2008 Compact Framework 3.5.

Répondre

1

Vous devriez pouvoir utiliser la fonction GetMetadataValue() pour récupérer la valeur de métadonnées.

var dependentUponValue = itemInstance.GetMetadataValue("DependentUpon"); 

Notez que cela peut renvoyer une chaîne vide si les métadonnées demandées ne sont pas définies sur l'élément.

+0

Cela fonctionne! Merci. – dablumen