Je suis en train (et à défaut) d'écrire un simple fichier modèle:Erreur lors d'une tentative de passer un paramètre à un modèle t4
<#@ template language="C#" hostspecific="True" debug="True" #>
<#@ output extension="cs" #>
<#@ include file="T4Toolbox.tt" #>
<#@ property name="ClassName" processor="PropertyProcessor" type="System.String" #>
public class <#= ClassName #>
{
}
Lorsque je clique sur le modèle en studio visuel, la propriété « ClassName 'est là dans la fenêtre des propriétés. C'est ce que je veux! Quand j'entrer du texte là-bas et construire, je reçois l'erreur suivante:
Error 1 Running transformation: System.ArgumentNullException: Value cannot be null.
Parameter name: objectToConvert
at Microsoft.VisualStudio.TextTemplating.ToStringHelper.ToStringWithCulture(Object objectToConvert)
at Microsoft.VisualStudio.TextTemplating32ED7F6BD49D2C3984C2CB7194792D4B.GeneratedTextTransformation.TransformText() in c:\Users\neilt.PAV12\Documents\Visual Studio 2008\Projects\ConsoleApplication2\ConsoleApplication2\ClassMaker.tt:line 6 C:\Users\neilt.PAV12\Documents\Visual Studio 2008\Projects\ConsoleApplication2\ConsoleApplication2\ClassMaker.tt 1 1
Si tout va bien, vous pouvez voir ce que je veux faire: Je voudrais que mon modèle pour cracher un fichier .cs avec une classe nommée avec la chaîne que j'ai définie dans la fenêtre de propriétés dans Visual Studio. Malheureusement, je manque à un très tôt étape !!
Donc, il n'y a aucun moyen de faire cela? J'espérais pouvoir utiliser les outils de temps de conception de Visual Studio, tels que celui qui vous permet de sélectionner une connexion de base de données, pour ensuite passer dans la base de données que mon générateur de template a besoin de créer une DAL pour moi. Le simple paramétrage du nom de la base de données dans mon modèle est-il la seule façon de le faire? –