예제 #1
0
        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);
        }