Le fait de ne pas placer ma base de données sous «App_Data» peut affecter le fonctionnement de Linq2Sql?

StackOverflow https://stackoverflow.com/questions/1819458

Question

Je rencontre un problème lorsque je travaille avec tous mes projets. Je n'ai pas Intellisense avec Linq2Sql et, lorsque j'écris des classes partielles dans le dossier du modèle, les propriétés créées par le concepteur Linq2Sql ne sont pas reconnues par les classes partielles. J'essaie donc d'éliminer toutes les sources possibles du problème.

J'ai 2 cas: (i) créer un fichier .mdf sous App_Data et (2) créer un fichier .dbo dans SQL EXPRESS 2005. Maintenant, lorsque créer le fichier DataContext (en glissant-déposant des tables dans le concepteur), fonctionnera-t-il de la même manière? Ou dois-je m'attendre à un comportement imprévu?

Merci

Était-ce utile?

La solution

App_Data est utilisé uniquement dans les applications ASP.NET et sert uniquement à stocker le fichier de base de données physique (le processus de travail ASP.NET a toujours un accès en lecture / écriture à ce dossier). Pour les applications classiques, vous devez déposer n'importe quel fichier de base de données dans des emplacements communs auxquels tout le monde a des droits (ou tous ceux qui utilisent l'application).

Placez votre DBML (fichier de linq en classes SQL ) dans le sous-dossier de votre projet, dans lequel il est judicieux de définir un espace de noms. Par exemple, vous le placeriez sous MyApp / Data ou MyApp / Repository ou MyApp / Models, etc.

Dans le concepteur .dbml , vérifiez la fenêtre de l'outil de propriétés et assurez-vous de spécifier le nom et l'espace de nom pour le contexte de données et les entités. Les classes partielles de votre entité DOIVENT être dans l'espace de noms SAME, sinon le compilateur ne saura pas les mettre ensemble.

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