コード例 #1
0
        // protected methods...
        protected override ProjectElement LoadProject(ProjectInfo info, Hashtable projects, string configuration, string platform)
        {
            if (info.Kind == STR_SolutionFolder)
            {
                return(null);
            }
            if (info.Kind == ProjectTypeGuidConstants.WebSite)
            {
                return(LoadWebSiteProject(info, projects));
            }
            string         projectDir = Path.GetDirectoryName(info.FilePath);
            ProjectElement result     = CreateProjectElement(info);

            MsBuildProjectLoader msBuildLoader = new MsBuildProjectLoader(info.FilePath);

            result.OptionStrict = msBuildLoader.OptionStrict;
            result.SetRootNamespace(msBuildLoader.RootNamespace);
            result.SetAssemblyName(msBuildLoader.AssemblyName);
            result.SetTargetFramework(msBuildLoader.TargetFramework);
            LoadProjectTypeGuids(result, msBuildLoader);
            LoadNotImportStdLibOption(result, msBuildLoader);
            LoadProjectDefines(result, msBuildLoader, configuration, platform);
            LoadReferences(result, msBuildLoader, projectDir);
            LoadProjectReferences(result, msBuildLoader, projects);
            LoadImportedNamespaces(result, msBuildLoader);
            LoadFiles(result, msBuildLoader, projectDir);

            return(result);
        }