Heritage database storage
-
mercredi 11 avril 2012 04:27
Bonjour,
Je viens vers vous aujourd'hui car je bloque sur un probleme depuis quelques jours et je n'arrive pas a trouver de solutions ... J'ai besoin de realiser un mode offline de mon application (avec bien entendu un nombre de fonctionnalite reduit). Pour cela je voudrais utiliser la database disponible sous Mango.
J'ai dans mon application des objets, des lieux avec des utilisateurs dans ces lieux (avec plusieurs type de lieux). J'ai donc un heritage du type
Lieu (abstract)
LieuPrive : Lieu LieuPublic : Lieu
J'ai dans mon appli une liste de Lieu, et je voudrais pouvoir la sauvegarder en tant que tel dans la DB, pour cela j'utilise
[InheritanceMapping(Code = "Private", Type = typeof(LieuPrive))] [InheritanceMapping(Code = "Public", Type = typeof(LieuPublic))]
avec comme discriminator
[Column(IsDiscriminator = true)] public string DiscKey { get; set; }le problème c'est que lorsque j'essai de sauvegarder un lieu une exception est levée :
Je n'arrive pas a comprendre d'ou peut venir le problème, j'ai essayer de sauvegarder un objet simple (sans héritage) et je n'ai pas eu de problème.
Je vous remercie d'avance pour votre aide.
Yoann
- Modifié Yoannv mercredi 11 avril 2012 04:28
- Modifié Yoannv mercredi 11 avril 2012 04:28
- Modifié Yoannv mercredi 11 avril 2012 04:29
- Modifié Yoannv mercredi 11 avril 2012 04:29
- Modifié Yoannv mercredi 11 avril 2012 04:30
- Modifié Yoannv mercredi 11 avril 2012 04:31
- Modifié Yoannv mercredi 11 avril 2012 04:31
Toutes les réponses
-
mardi 17 avril 2012 09:57Propriétaire
Bonjour,
Est-ce qu’on peut avoir le code complet ou un message d’erreur plus détaillé, aussi que la ligne de code ou l’erreur est apparue ?
Bonne journée,
Cipri
Ciprian DUDUIALA, MSFT  
•Nous vous prions de considérer que dans le cadre de ce forum on n’offre pas de support technique et aucune garantie de la part de Microsoft ne peut être offerte.
-
jeudi 19 avril 2012 02:50
Bonjour,
J'ai finalement pu résoudre ce problème, celui-ci venait du fait que même si ma classe Lieu est abstraite il faut tout de même la définir dans le discriminator.
Malgré cela j'ai tout de même préférer ne pas utiliser SQL CE pour le stockage de mes informations, je trouve ce format trop contraignant avec ma structure de données. Et je préfère largement écrire mes propres requêtes SQL que de faire du mapping objet qui est excellent pour des structure simple (objets compose de type simple comme string, int, Datetime etc...) mais qui devient rapidement lourd lorsque la structure se complexifie (question de point de vue très probablement, mais pour moi rien de plus simple que du SQL).
C'est pourquoi j'ai décide d'utiliser SQLite pour le storage de mon app, a ce sujet j'aurais une question (n’étant pas complètement satisfait de SQLite) existe t'il un moyen pour pouvoir écrire ces propres requêtes SQL avec SQL CE ou SQLite est la seule alternative permettant de faire du SQL sur WP7 ?
Cordialement,
Yoann
- Modifié Yoannv jeudi 19 avril 2012 03:22
- Marqué comme réponse Ciprian DuduialaOwner jeudi 19 avril 2012 06:52
-
jeudi 19 avril 2012 06:52Propriétaire
Bonjour,
Oui, pour utiliser SQL directement sur WP7 est la seul alternative. Par contre, vous pouvez utiliser un base de données SQL Server stockée sur un certain serveur et puis utiliser un service Web pour communiquer avec le serveur, par exemple.
Bonne journée,
Cipri
Ciprian DUDUIALA, MSFT  
•Nous vous prions de considérer que dans le cadre de ce forum on n’offre pas de support technique et aucune garantie de la part de Microsoft ne peut être offerte.
-
jeudi 19 avril 2012 13:08
Bonjour,
Merci pour votre réponse, pour la base de données distante cela ne correspond malheureusement pas a mon besoin puisque je souhaite réaliser un mode offline.
Je vais donc probablement rester avec SQLite malgré quelques problèmes mineurs.
Cordialement,
Yoann



