public void UpdateAssemblyReference(string fileName) { var assemblyInfo = SystemTypeController.LoadAssembly(fileName); //assemblyInfo.UpdateAssembly(); assemblyInfo.AddProject(this); }
public void AddAssemblyReference(string path) { var assemblyInfo = SystemTypeController.LoadAssembly(path); _AssemblyReferences.Add(assemblyInfo); assemblyInfo.AddProject(this); }
public void AddAssemblyReference(VSLangProj.Reference reference) { var assemblyInfo = SystemTypeController.LoadAssembly(reference); _AssemblyReferences.Add(assemblyInfo); assemblyInfo.AddProject(this); }
public XProject(IXSharpProject project) { _projectNode = project; xSourceFilesDict = new ConcurrentDictionary <string, XFile>(StringComparer.OrdinalIgnoreCase); xOtherFilesDict = new ConcurrentDictionary <string, XFile>(StringComparer.OrdinalIgnoreCase); this._typeController = new SystemTypeController(); this._loaded = true; if (_projectNode == null) { } }
public static bool Remove(string projectName) { if (xProjects.ContainsKey(projectName)) { var project = xProjects[projectName]; // Flag as unloaded to make sure that a running file walker // for the project gets aborted project.UnLoad(); var result = xProjects.TryRemove(projectName, out project); SystemTypeController.UnloadUnusedAssemblies(); return(result); } return(false); }
public void ResolveProjectReferenceDLLs() { if (hasUnprocessedReferences) { ResolveUnprocessedProjectReferences(); ResolveUnprocessedStrangerReferences(); } foreach (var DLL in _projectOutputDLLs.Values) { if (SystemTypeController.FindAssemblyByLocation(DLL) == null) { AddAssemblyReference(DLL); } } }
public static void CloseAll() { xProjects.Clear(); SystemTypeController.Clear(); if (_orphanedFilesProject != null) { if (xProjects.TryAdd(OrphanedFiles, _orphanedFilesProject)) { foreach (var asm in _orphanedFilesProject.AssemblyReferences) { SystemTypeController.LoadAssembly(asm.FileName); } } } }