EF5 démarrage D'un projet: erreur transformation en cours d'exécution: veuillez écraser le jeton de remplacement ' $edmxInputFile$'

je crée un projet de Console en VS2012 avec .Net4.5. Après cela je "ajoute", "nouveau point" au projet, et choisir " EF 5.X DbContext Generator". Puis, après quelques secondes, le message d'erreur suivant apparaît dans la Liste d'Erreurs' onglet:

erreur 1 transformation en cours d'exécution: veuillez écraser le jeton de remplacement '$edmxInputFile$' avec le nom réel du .fichier edmx vous souhaitez générer. C:ProjectsTestsConsoleAppEF5ConsoleAppEF5Model1.tt`

Comment puis-je résoudre ce problème ?

Ce qui me manque ?

35
demandé sur Michael Freidgeim 2013-05-17 17:42:58

4 réponses

vous devez d'abord créer le modèle edmx pour générer des POCO à partir de celui-ci automatiquement. Vous pouvez l'ajouter par le menu (Ajouter un nouvel article - > ADO.NET modèle de données de L'entité). Une fois le modèle créé, vous pouvez utiliser le générateur DbContext. Remplacer $edmxInputFile$ par le nom de votre fichier edmx et ensuite enregistrer le fichier que vous éditez (bien que VS 2012 devrait le faire automatiquement).

42
répondu eternity 2013-05-17 14:35:23

Et, dans un autre scénario, c'est apparemment un bug connu: http://web.archive.org/web/20131203074519/http://connect.microsoft.com/VisualStudio/feedback/details/498723/ado-net-entityobject-generator-error-list-bug

donc si vous ajoutez un générateur DbContext et que vous le supprimez et que vous obtenez cette erreur, fermez et rouvrez le projet. Résolu pour moi.

33
répondu Alex 2017-04-26 05:39:03

dans mon cas, j'ai ajouté par inadvertance le Générateur de contexte EF Db au lieu d'ajouter l'entité réelle. Total PEBKAC mais je poste ici car je suis sûr que je ne vais pas être le seul.

j'ai remarqué que l'extension de fichier était TT car il s'agit d'un template de texte pas L'EDMX que je voulais.

si vous cherchez à ajouter entity, alors ajoutez ADO.NET Entity Data ModelEF X.x DbContext Generator

5
répondu workabyte 2016-04-07 18:35:29

mes prochaines étapes: je suis allé au Model1.TT, dégagez!--1--> et c'est parti comme une chaîne vide et cliqué pour construire le projet. Cela m'a donné l' Erreur d'exception non-autorisée (ce qui est bien, je ne voulais pas qu'elle modifie quoi que ce soit, de toute façon). Je voulais juste me débarrasser de l'erreur originale.

Ensuite, j'ai fait un peu farfouillé et j'ai découvert que mon projet ".csproj" le fichier a été modifié avec ceci:

<ItemGroup>
    <Service Include="{508349B6-6B84-4DF5-91F0-309BEEBAD82D}" />
</ItemGroup>

maintenant, je ne pense pas que ce guide va être le même dans tous les cas d'erreur, ou même chaque fois que quelqu'un ajoute Sur le EF 5.X DbContext Generator. Mais si votre .fichier csproj (NOTE: c'est différent de votre .csproj.le fichier Utilisateur) a été modifié (avec un peu de chance il est dans le contrôle source et vous pouvez le dire), vous devriez être en mesure de comprendre comment. J'ai supprimé cette section, J'ai fait une "compilation", et je me suis débarrassé de mes erreurs.

si ce n'est pas dans le contrôle source, vous pouvez toujours créer un projet fictif et comparer votre .csproj fichier au dossier de ce projet, et faire un peu d'essai et d'erreur en sortant tout ce qui est supplémentaire sur votre .csproj et faire un" Build " (sauvegarder les choses pour le bloc-notes, les remettre si elles ne le font pas effacer votre erreur). Je sais que c'est une façon incroyable de le faire, mais au moins vous ne perdrez pas de temps à refaire toute votre solution.

2
répondu vapcguy 2017-08-31 17:09:09