Как можно избежать добавления шаблона элемента дважды или более в шаблон проекта? - PullRequest
0 голосов
/ 22 ноября 2018

У меня есть шаблон проекта, и всякий раз, когда я пытаюсь добавить шаблон элемента, он создается в нужном месте (папке), но также добавляет элемент в первую папку, добавленную в проект.Как я могу это исправить?

Код:

if (project.Kind == PrjKind.prjKindCSharpProject) {
 itemPath = solution.GetProjectItemTemplate("PriClass.zip", "CSharp");
 fileExtension = ".cs";
} else {
 itemPath = solution.GetProjectItemTemplate("PriClass.zip", "VisualBasic");
 fileExtension = ".vb";
}

if (!String.IsNullOrEmpty(itemPath)) {
 foreach(MyTreeNode type in selectedTypes) {
  string[] namespaceParts = type.Namespace.Split('.');

  if (namespaceParts.Length == 4) {
   this.Module = namespaceParts[2];
   this.ModuleType = namespaceParts[3];
   this.ClassName = type.NodeName;

   ProjectItem rootFolder = project.ProjectItems.Cast < ProjectItem > ()
    .FirstOrDefault(i => i.Name == this.Module) ? ? project.ProjectItems.AddFolder(this.Module);

   switch (this.ModuleType) {
    case "Editors":
     rootFolder.ProjectItems.AddFromTemplate(itemPath, "Ui" + this.ClassName + fileExtension);
     break;

    case "Services":
     rootFolder.ProjectItems.AddFromTemplate(itemPath, "Api" + this.ClassName + fileExtension);
     break;
   }
  }
 }

Проект после создания:

Project after created

1 Ответ

0 голосов
/ 29 ноября 2018

Попробуйте удалить содержимое «Шаблон данных», которое находится в вашем случае, из папки «PriClass.zip».Этого должно быть достаточно, чтобы папка «PriClass» не выглядела как при добавлении Item / Class.

Пример:

enter image description here

...