J'ai créé une simple extension Visual Studio 2015 qui ajoute une classe au projet en cours.Visual Studio Extension Reload Project
Project p = (Project) ProjectsComboBox.SelectedItem;
string projectLocation = Path.GetDirectoryName(p.FileName);
// I load the project where I want to Add file
var projectCurrent = new Microsoft.Build.Evaluation.Project(p.FileName);
string relativeNewPath = "\\Model\\DAL\\" + ViewNameTexBox.Text + "DAO.cs";
string newPath = projectLocation + relativeNewPath;
projectCurrent.AddItem("Compile", relativeNewPath);
projectCurrent.Save();
// Once class added to my project I edit text inside newly create class
string text = File.ReadAllText("Templates/DAO.cs.txt");
text = text.Replace("$viewName$", ViewNameTexBox.Text);
File.WriteAllText(newPath, text);
Le fichier est inclus dans le projet et modifié, mais Visual Studio invite un message demandant de recharger le projet. Quand je le fais, le projet ne rechargera pas.
le projet a été modifié en dehors de l'environnement
Je voudrais disposer CurrentProject mais projet ne IDisposable. Définir currentProject sur null n'a aucun effet.
Comment puis-je demander à mon code de libérer currentProject et de le recharger par Visual Studio?
Pourquoi [tag: c] tag? –
@IanAbbott miss cliquez sur autocomplete, l'a changé en C# – Yvain
J'ai trouvé une autre façon de le faire, voir ma réponse sur ce [post] (https://stackoverflow.com/a/44160484/1317323) – Yvain