public virtual async Task <SolutionItem> CreateSolutionItem(ProgressMonitor monitor, SolutionLoadContext ctx, string fileName) { SolutionItem item; if (typeof(SolutionItemFactory).IsAssignableFrom(ItemType)) { if (factory == null) { factory = (SolutionItemFactory)Activator.CreateInstance(ItemType); } item = await factory.CreateItem(fileName, Guid).ConfigureAwait(false); } else { item = MSBuildProjectService.CreateUninitializedInstance(ItemType); } item.TypeGuid = Guid; return(item); }