Salut tout le monde, j'ai eu quelques questions concernant le .NET Entity Framework et l'utilisation de procédures stockées. Je vais savoir:Quelques questions à propos de .NET Entity Framework et des procédures stockées
Je sais que nous pouvons faire un clic droit sur une procédure stockée et choisir Fonction Importer pour pouvoir utiliser le code. Y at-il un moyen de faire cela pour de nombreuses procédures stockées à la fois? Lorsque j'effectue une importation de fonction, je peux créer un nouveau type complexe ou utiliser un type complexe existant. Eh bien, comment puis-je accéder aux types/objets complexes qui sont en dehors du fichier edmx? C'est-à-dire, si j'ai une classe dans mon projet, est-il possible d'y accéder en faisant une Importation de Fonction?
Lors de l'appel de la procédure stockée à partir du code, il renvoie un IEnumerable du type Complexe I défini comme. Cependant, parfois ces types complexes n'ont pas toutes les propriétés dont j'ai besoin, donc je crée une nouvelle classe dans mon projet qui hérite du type complexe utilisé dans la procédure stockée. Le problème est, je ne peux pas sembler couler le type complexe retourné de la procédure stockée à la nouvelle classe que j'ai créée. Une raison pour laquelle je ne peux pas faire ça? Ce que j'ai fini par faire est de boucler à travers le IEnumerable et d'ajouter chaque élément à une nouvelle liste de la classe que j'ai créée. Mais cela se sent et semble malpropre.
Bara
1. Après avoir ajouté les procédures stockées, vous devez toujours aller à chacune d'entre elles et effectuer une importation de fonction. En ce moment, je dois le faire individuellement, et pour des centaines de procédures stockées, cela peut devenir incontrôlable. 2. Je vois, assez juste. Votre réponse au numéro 3 vous aide beaucoup, alors merci. 3. Cela ne répond pas exactement à ma question, mais c'est une aide énorme. Je suis certain que je peux changer mon code pour travailler avec ceci. Merci pour toute l'aide :) – Bara
J'essaie d'utiliser la classe partielle, et tout fonctionne correctement du point de vue du codage. Cependant, je retourne une liste de la classe en XML (en utilisant un service REST) et il manque les paramètres de ma classe partielle (ex: MyProperty dans votre exemple). Une raison pour laquelle? – Bara
Apparemment, l'ajout de ceci au-dessus de ma propriété le corrige: [global :: System.Runtime.Serialization.DataMemberAttribute()] ... par exemple, dans votre exemple il irait juste au-dessus de la chaîne publique MyProperty {get; ensemble; } – Bara