web-dev-qa-db-fra.com

Comment résoudre cette erreur: Le chargement du fichier d'inclusion 'EF.Utility.CS.ttinclude' a renvoyé une chaîne null ou vide

Comment puis-je résoudre ces erreurs: 

  1. Le chargement du fichier d'inclusion 'EF.Utility.CS.ttinclude' a renvoyé une chaîne nulle ou vide.
  2. La valeur ne se situe pas dans la plage attendue.

Outils utilisés: VS 2012, Entity Framework 5.0.0, T4MVCExtensions 3.5.0, .NET Framework 4.5

J'utilise des modèles EF et T4 dans un projet au sein d'une grande solution MVC sans incident. Maintenant, lorsque je clique avec le bouton droit sur le diagramme edmx, EF répond avec le message suivant: La valeur ne se situe pas dans la plage attendue. Lorsque je compile le projet EF, il répond par ces messages:

  1. Le chargement du fichier d'inclusion 'EF.Utility.CS.ttinclude' a renvoyé une chaîne nulle ou vide. La transformation ne sera pas exécutée. C:\Projects\NSAForms\NSAForms\NSAFormsEDM\NSAFormsEntities.tt
  2. Echec de la résolution du texte d'inclusion pour le fichier: C:\Projects\NSAForms\NSAForms\NSAFormsEDM\EF.Utility.CS.ttinclude

Chaque table de la base de données a une clé primaire. Je suis frappé par la soudaineté de ce problème. Quelqu'un a-t-il des suggestions pour résoudre ce problème?

Merci d'avance,

Arnold

24
Arnold

Dans VS 2012, le fichier EF.Utility.CS.ttinclude n'est installé que si le composant Outils de développement Web Microsoft ou Outils de données Microsoft SQL Server est sélectionné.

28
bricelam

J'ai eu un problème très similaire et j'ai essayé avec VS2012 et VS2013. 

Après avoir réinstallé Entity Framework 6 Tools pour Visual Studio 2012 http://www.Microsoft.com/en-us/download/confirmation.aspx?id=40762 Tout est revenu à la normale.

70
odesuk

Réinstallation des outils Entity Framework 6 pour Visual Studio 2012 http://www.Microsoft.com/en-us/download/confirmation.aspx?id=40762 work for me 

4
Alexandre

Visual Studio 2017

recevait la même erreur mais seulement dans un projet de test. après avoir examiné le projet de test et que l'autre projet ait correctement référencé ce fichier, j'ai constaté que l'ajout de ce qui suit au fichier app.config du projet défaillant a résolu mon problème

  <configSections>
    <!-- For more information on Entity Framework configuration, visit http://go.Microsoft.com/fwlink/?LinkID=237468 -->
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
  </configSections>
  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
      <parameters>
        <parameter value="mssqllocaldb" />
      </parameters>
    </defaultConnectionFactory>
  <connectionStrings>
0
workabyte

Pour VS2017, j'ai fini par ajouter EF6.Utility.CS.ttinclude au dossier du modèle. Cela a résolu mon problème avec MySql et EF.

Le fichier peut être trouvé: C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\Entity Framework Tools\Templates\Includes\EF6.Utility.CS.ttinclude

UPDATEPour éviter ce qui précède, supprimer complètement les entités puis rajouter en corrige le problème.

0
Spencer

Avait ce problème avec une installation récente de VS2017 Enterprise après avoir déjà cette fonctionnalité fonctionnant dans Professional.
La solution pour moi était de:

  1. Ouvrez le programme d'installation de Visual Studio et «Modifier» mon installation d'entreprise.
  2. Sélectionnez "ASP.NET et développement Web" dans la section Web et Cloud.
  3. Cliquez sur "Modifier" en bas à droite  enter image description here

Il est probablement intéressant de noter que EF6 est déjà installé et que je n’ai pas besoin de le réinstaller pour que cela fonctionne.

Une fois ces étapes terminées et le lancement de Visual Studio, l'erreur a disparu et j'ai été en mesure de générer mes classes avec succès. J'espère que cela t'aides!

0
EJay

Toutes les solutions ci-dessus ne fonctionnaient pas pour moi. J'ai donc créé un nouveau projet pour voir si le problème persiste mais que l'erreur ne s'est pas produite dans le projet nouvellement créé. J'ai ensuite comparé le projet avec l'ancienne sauvegarde pour vérifier les dernières modifications apportées et trouver le problème. J'ai récemment eu mis à jour un paquet Clarius.TransformOnBuild vers une version plus récente après la mise à niveau inférieure du paquet, l'erreur a disparu.

0
irfandar