本文整理汇总了C#中Project.GetUniqueName方法的典型用法代码示例。如果您正苦于以下问题:C# Project.GetUniqueName方法的具体用法?C# Project.GetUniqueName怎么用?C# Project.GetUniqueName使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Project
的用法示例。
在下文中一共展示了Project.GetUniqueName方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetProjectManager
public virtual IProjectManager GetProjectManager(Project project)
{
EnsureCached(project);
IProjectManager projectManager;
bool projectExists = _projects.TryGetValue(project.GetUniqueName(), out projectManager);
Debug.Assert(projectExists, "Unknown project");
return projectManager;
}
示例2: EnsureCached
internal void EnsureCached(Project project)
{
string projectUniqueName = project.GetUniqueName();
if (_projects.ContainsKey(projectUniqueName))
{
return;
}
_projects[projectUniqueName] = CreateProjectManager(project);
}
示例3: AddBindingRedirects
private static void AddBindingRedirects(ISolutionManager solutionManager, Project project, IFileSystemProvider fileSystemProvider, AppDomain domain, HashSet<string> projects, IDictionary<string, HashSet<string>> projectAssembliesCache)
{
string projectUniqueName = project.GetUniqueName();
if (projects.Contains(projectUniqueName))
{
return;
}
if (project.SupportsBindingRedirects())
{
AddBindingRedirects(project, fileSystemProvider, domain, projectAssembliesCache);
}
// Add binding redirects to all projects that are referencing this one
foreach (Project dependentProject in solutionManager.GetDependentProjects(project))
{
AddBindingRedirects(solutionManager, dependentProject, fileSystemProvider, domain, projects, projectAssembliesCache);
}
projects.Add(projectUniqueName);
}
示例4: DetermineProjectCheckState
private static bool DetermineProjectCheckState(Project project)
{
bool checkState;
if (String.IsNullOrEmpty(project.GetUniqueName()) ||
!_checkStateCache.TryGetValue(project.GetUniqueName(), out checkState))
{
checkState = true;
}
return checkState;
}
示例5: AddDependentProject
private static void AddDependentProject(IDictionary<string, List<Project>> dependentProjects, Project project, Project dependent)
{
string uniqueName = project.GetUniqueName();
List<Project> dependents;
if (!dependentProjects.TryGetValue(uniqueName, out dependents))
{
dependents = new List<Project>();
dependentProjects[uniqueName] = dependents;
}
dependents.Add(dependent);
}
示例6: GetDependentProjects
// REVIEW: This might be inefficient, see what we can do with caching projects until references change
public IEnumerable<Project> GetDependentProjects(Project project)
{
if (project == null)
{
throw new ArgumentNullException("project");
}
var dependentProjects = new Dictionary<string, List<Project>>();
// Get all of the projects in the solution and build the reverse graph. i.e.
// if A has a project reference to B (A -> B) the this will return B -> A
// We need to run this on the ui thread so that it doesn't freeze for websites. Since there might be a
// large number of references.
ThreadHelper.Generic.Invoke(() =>
{
foreach (var proj in GetProjects())
{
if (proj.SupportsReferences())
{
foreach (var referencedProject in proj.GetReferencedProjects())
{
AddDependentProject(dependentProjects, referencedProject, proj);
}
}
}
});
List<Project> dependents;
if (dependentProjects.TryGetValue(project.GetUniqueName(), out dependents))
{
return dependents;
}
return Enumerable.Empty<Project>();
}