方法Solution.Projects.Index(Object index)获取项目索引作为数字。
我有项目的名称。如何以编程方式确定此项目解决方案中的索引?
答案 0 :(得分:6)
您可以使用linq:
string yourProject = "ProjectName";
var query = Solution.Projects.Cast<Project>()
.Select((p, i) => new { Name = p.Name, Index = i})
.First(p => p.Name == yourProject).Index;
答案 1 :(得分:1)
如果您拥有项目的名称,则可以遍历所有项目以查找所需项目的索引:
int index = 0;
foreach(Project project in dte.Solution.Projects)
{
if (string.Equals(project.Name, "desired project name"))
{
break;
}
index++;
}
另一方面,为什么你真的需要项目的索引?您也可以将Item
方法与项目名称一起用作参数。
传递给index的值是一个整数,它是其集合中Project对象的索引。 index的值也可以是一个字符串值,等于集合中项目的名称。