Question

Je suis en train de personnaliser modèle MVC Echafaudage T4 pour le dépôt afin qu'il crée des liaisons ninject dans ma classe App_Start \ NinjectMVC3.cs.

Je peux changer le modèle pour personnaliser le référentiel qui est créé mais je suis un peu d'une perte à la façon dont je peux cause le modèle d'ajouter du contenu dans un fichier séparé.

Tout le monde fait quelque chose de semblable? Aussi je suppose que diviser le référentiel et son interface dans des fichiers séparés seraient à portée de main.

Merci

Était-ce utile?

La solution

Si vous devez créer un fichier de classe différent du modèle T4 d'origine, je pense qu'il est préférable si vous créez un nouveau modèle à cette fin. Si vous souhaitez enregistrer un fichier dans un tempalte, vous pouvez créer le fichier en utilisant la bibliothèque Syste.IO:

<#@ import namespace=“System.IO” #>

<#+
  void SaveOutput(string outputFileName)
  {
      string templateDirectory = Path.GetDirectoryName(Host.TemplateFile);
      string outputFilePath = Path.Combine(templateDirectory, outputFileName);
      File.WriteAllText(outputFilePath, GetMyContent()); 
  }
#>
<#+
  string GetMyContent()
  {
      // clean the environment 
      this.GenerationEnvironment.Remove(0, this.GenerationEnvironment.Length);
      #>
        This is my content
      <#+
      // return new content
      return this.GenerationEnvironment.ToString(); 
  }
#>

Vous devez développer votre GetMyContent() pour remplir le fichier de sortie avec le contenu approprié. Dans cet exemple GetMyContent nettoie l'environnement à chaque fois, donc pensez à utiliser la méthode SaveOutput après tous les autres fichiers sont créés.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top