Je cherche à utiliser des vues EF pré-générées par http://msdn.microsoft.com/en-us/library/bb896240.aspx pour accélérer le temps de chargement. Cela fonctionne très bien dans mon environnement local et j'ai des chaînes de connexion qui incluent quelque chose sur le modèle de "métadonnées = ~/bin/Modèles \ DSManagedCoModel.csdl | ~/bin/Modèles \ DSManagedCoModel.ssdl | ~/bin/Modèles \ DSManagedCoModel. msl ". Quand j'ai débogué en utilisant localhost, ça a très bien fonctionné. Ensuite, quand je l'ai essayé en utilisant 127.0.0.1, il me donnait une erreur "Le chemin de métadonnées spécifié n'est pas valide". J'ai corrigé ceci pour 127.0.0.1 en ajoutant un événement de construction qui copie les fichiers dans le répertoire bin du projet Azure Cloud (en fait, son sous-dossier Models). Lorsque j'essaye de publier sur Azure, cependant, je reçois un message similaire "Le chemin de métadonnées spécifié n'est pas valide". Est-il possible d'utiliser des vues EF pré-générées avec Azure? Comment?Vues d'infrastructure d'entités pré-générées dans Azure?
0
A
Répondre
1
Je suggérerais d'inclure CSDL, etc., comme ressources au lieu de les conserver en tant que fichiers. Ajoutez les fichiers CSDL, etc., à votre projet et spécifiez "Embedded Resoruce" comme action de construction. Alors vous pouvez faire:
metadata="res://MyAssembly.dll/MyAssembly.bin.Models.DSManagedCoModel.csdl| //etc.
Notez que ces fichiers ne sont pas réellement les vues prégénérées; ils sont juste le modèle. Mais vous en avez besoin pour générer les vues avec EDMGen.
1
suis tombé sur cet excellent post qui sorte vraiment aidé par la confusion avec des vues pré-générées: http://blog.willbeattie.net/2010/04/pre-generating-views-in-entity.html
Craig, c'est un honneur de vous répondre. Votre blog et les réponses ici sur SO sont une ressource formidable ... Cela m'a rapproché ... la première fois qu'il a dit quelque chose à propos de ne pas trouver la ressource. Puis quand j'ai essayé le res: // */trick il le trouve mais dit "Le nom EntityContainer doit être unique". Il est unique à travers les fichiers edmx (j'en ai plusieurs), mais je note que mon edmx contient une section marquée qui répète l'info ci-dessus. Cela ressemble à un indice ... – Vince
Si vous utilisez des fichiers CSDL/MSL/SSDL séparés, l'EDMX n'est plus utilisé du tout (sauf comme source pour ce qui précède) et ne devrait pas être référencé lors de l'exécution. –
En regardant de plus près, le contenu de la CSDL (et les autres fichiers) sont clairement intégrés dans l'EDMX. En fait, ils semblent être identiques. Je suppose que l'un ou l'autre devrait être retiré? Pour info, j'ai EntityDeploy comme mon action de construction EDMX et Embedded Resource (ne pas copier) pour les fichiers csdl & connexes. – Vince