p
u
b
l
i
c
i
t
é
publicité
  1. #1
    Invité régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    mars 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : mars 2011
    Messages : 28
    Points : 8
    Points
    8

    Par défaut Insertion en base via un service Azure Mobile

    Bonjour à tous,

    Je suis en train de tester Windows Azure, et j'aimerais créer un utilisateur, avec un droit associé.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    public class Utilisateur
    {
         public int Id { get; set; }
     
         [DataMember(Name = "login")]
         public string Login { get; set; }
     
         [DataMember(Name = "droit")]
         public Droit Droits { get; set; }
     
         [DataMember(Name = "password")]
         public string Password { get; set; }
    }
     
    public class Droit
    {
        public int Id { get; set; }
     
        [DataMember(Name = "label")]
        public string Label { get; set; }
     
        [DataMember(Name = "image")]
        public string Image { get; set; }
    }
    Du côté de Azure, j'ai deux tables créées : Utilisateur et Droit.

    La création d'un droit fonctionne parfaitement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    IMobileServiceTable<Droit> droitTable = App.MobileService.GetTable<Droit>();
    var items = await droitTable.Where(i => i.Label == label).ToListAsync();
    if (items == null || !items.Any())
    {
        var droit = new Droit
        {
            Label = label,
            Image = string.Empty
        };
    await droitTable.InsertAsync(droit);
    }
    Cependant, lorsque je souhaite ajouter un utilisateur avec une association à un droit donné (de la façon suivante) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    IMobileServiceTable<Utilisateur> tableUser = App.MobileService.GetTable<Utilisateur>();
    var users = await tableUser.Where(i => i.Login == "Bastien").ToListAsync();
    if (users == null || !users.Any())
    {
        var droit = await App.MobileService.GetTable<Droit>().Where(i => i.Label == "Administrateur").Take(1).ToListAsync();
        var user = new Utilisateur
        {
            Login = "Nom_utilisateur",
            Password = "Pass_utilisateur",
            Droits = droit.FirstOrDefault()
        };
        await tableUser.InsertAsync(user);
    }
    J'ai une erreur :
    Cannot serialize member 'droit' of type 'portable_pome.Data.Droit' declared on type 'Utilisateur'.
    Que cela signifit-il ? Qu'ai-je oublié pour faire fonctionner la jointure ?

    Merci d'avance !

  2. #2
    Expert Confirmé
    Avatar de GuruuMeditation
    Homme Profil pro
    .Net Architect
    Inscrit en
    octobre 2010
    Messages
    1 646
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : .Net Architect
    Secteur : Conseil

    Informations forums :
    Inscription : octobre 2010
    Messages : 1 646
    Points : 3 451
    Points
    3 451

    Par défaut

    Je ne suis pas spécialiste Azure, mais je crois que les Mobile Services sont encore un peu limite question fonctionnalités. Il semble qu'il n'accepte que des types de base (string,bool,datetime, type numerique,...)

    voir :

    http://blogs.msdn.com/b/carlosfiguei...ple-types.aspx

    http://blogs.msdn.com/b/carlosfiguei...tionships.aspx
    Microsoft MVP : Windows Platform

    MCPD - Windows Phone Developer
    MCPD - Windows Developer 4

    http://www.guruumeditation.net

    “If debugging is the process of removing bugs, then programming must be the process of putting them in.”
    (Edsger W. Dijkstra)

  3. #3
    Invité régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    mars 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : mars 2011
    Messages : 28
    Points : 8
    Points
    8

    Par défaut

    Ok et bien on va adapter tout ça !
    Merci de ta réponse rapide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 17
    Dernier message: 19/05/2010, 16h41
  2. Réponses: 1
    Dernier message: 16/03/2010, 11h29
  3. Exposer une base de données via Web services
    Par sharkillator dans le forum Web Services
    Réponses: 0
    Dernier message: 24/12/2009, 08h44
  4. Insertion en masse via Web Service
    Par loloboheme dans le forum Développement
    Réponses: 1
    Dernier message: 20/01/2009, 23h40
  5. Insertion Blob base Oracle en ADO via DatasetProvider
    Par Creenshaw dans le forum Bases de données
    Réponses: 1
    Dernier message: 05/12/2005, 14h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo