Questo dovrebbe aggiungere un documento.Roslyn Aggiungi documento a un progetto e Salva questa modifica nel file di soluzione reale
public static void AddDoc()
{
var msBuild = MSBuildWorkspace.Create();
var sln = msBuild.OpenSolutionAsync
(@"D:\PanNiebieski\Documents\Visual Studio 14\Projects\WebApplication1"
+ @"\WebApplication1.sln").Result;
foreach (var p in sln.Projects)
{
p.AddDocument(Guid.NewGuid().ToString() + ".txt", "test");
var ok = msBuild.TryApplyChanges(sln);
Console.WriteLine(p.Name + ":" + ok);
}
Console.ReadKey();
}
Metodo "TryApplyChanges" restituisce true in modo che il documento sia stato aggiunto. Poi di nuovo quando controllo la soluzione non esiste nulla del genere. Ho lo stesso problema con l'aggiunta di riferimenti a un progetto.
La domanda è come posso salvare il cambiamento come aggiungere un documento a un progetto reale. Mi manca qualcosa. Molte domande in StackOverflow sull'aggiunta di riferimenti a un progetto dicevano che semplicemente non funziona. Anche il metodo "AddDocument" non fa nulla?
Questo metodo indica che questa azione è supportata. Sono confuso.
Cosa succede se aggiungi un file .cs? Esaminando http://source.roslyn.codeplex.com/#Microsoft.CodeAnalysis.Workspaces.Desktop/Workspace/MSBuild/MSBuildWorkspace.cs,1285b31dd95f5004, vedo alcune estensioni lì. (Inoltre, questo codice è cambiato rispetto all'anteprima VS2015) –
Non funziona dopo l'aggiornamento dei pacchetti da beta1 a beta2. l'estensione del file "cs" non ha funzionato. – user2932893