IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Phone .NET Discussion :

Windows Phone et ASP.NET Web API


Sujet :

Windows Phone .NET

  1. #1
    Membre expérimenté Avatar de DotNET74
    Homme Profil pro
    Watch R&D Engineer & Apprenti .NET
    Inscrit en
    août 2003
    Messages
    1 984
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Watch R&D Engineer & Apprenti .NET

    Informations forums :
    Inscription : août 2003
    Messages : 1 984
    Points : 1 433
    Points
    1 433
    Par défaut Windows Phone et ASP.NET Web API
    Hello,

    ça fait quelques jours que je galère pour trouver des tutos qui explique comment mettre en place l'architecture suivante:

    - Site ASP.NET MVC 5 avec Web API et authentification des utilisateurs.
    - Base de données SQL Server pour la gestion des utilisateurs (Requis par mon hébergeur).
    - Application Windows Phone capable de se connecter avec un login et mot de passe le tout sans page web.

    J'ai parcouru tout les tutos du site ASP.NET mais à chaque fois il manque un sujet.

    Si vous avez des pistes ce serait sympa

    Merci
    La Théorie c'est quand on comprends tout mais que rien ne fonctionne.
    La Pratique c'est quand tout fonctionne mais qu'on ne sait pas pourquoi !

    Si vous aimez ma réponse, cliquez sur la main verte Merci

  2. #2
    Membre émérite Avatar de meziantou
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    avril 2010
    Messages
    1 223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : avril 2010
    Messages : 1 223
    Points : 2 424
    Points
    2 424
    Par défaut
    Tu veux faire une application Windows Phone qui accède à une API faite avec Web API. L'utilisateur doit s'authentifier sans avoir besoin de Web Browser.
    Tu parles d'un site ASP MVC 5. As-tu des pages web ou bien est-ce juste pour héberger ton API ?

    Qu'est-ce qui te pose problème ?

    - La méthode d'authentification ? HTTP Basic, SWT, JWT, certificat, etc.
    - Configurer l'authentification côté serveur? avec un DelegatingHandler ou un Middleware Owin pour être à la mode...
    - Le stockage des utilisateurs? Membership ou ASP.NET Identity soyons encore à la mode
    - L'appel à l'API depuis le Windows Phone ?

  3. #3
    Membre expérimenté Avatar de DotNET74
    Homme Profil pro
    Watch R&D Engineer & Apprenti .NET
    Inscrit en
    août 2003
    Messages
    1 984
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Watch R&D Engineer & Apprenti .NET

    Informations forums :
    Inscription : août 2003
    Messages : 1 984
    Points : 1 433
    Points
    1 433
    Par défaut
    Et bien un peu tout ça ....

    Plus précisément, j'ai bien un site ASP.NET MVC 5 qui est mon site principal et je veux y ajouter une authentification pour moi et mes utilisateurs.

    Je veux aussi mettre en place une Web API pour que mes applications s'y connectent et l'utilisent pour alimenter une base de données.

    La Théorie c'est quand on comprends tout mais que rien ne fonctionne.
    La Pratique c'est quand tout fonctionne mais qu'on ne sait pas pourquoi !

    Si vous aimez ma réponse, cliquez sur la main verte Merci

  4. #4
    Membre émérite Avatar de meziantou
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    avril 2010
    Messages
    1 223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : avril 2010
    Messages : 1 223
    Points : 2 424
    Points
    2 424
    Par défaut
    Vu que tu souhaites éviter d'ouvrir un Web Browser, tu élimines déjà les authentifications externes (Google, Microsoft, Facebook, ...).

    Une façon de faire:
    - Une base de données avec une table utilisateur contenant au moins nom d'utilisateur et mot de passe.
    - Un MembershipProvider ou un UserStore si tu préfères ASP.NET Identity pour gérer les utilisateurs
    - Pour le site web tu peux utiliser un cookie pour l'authentification
    - Pour l'API tu peux utiliser différentes méthodes parmis celles présentes dans le message précédent. Les cookies ne sont pas très courant pour une API, mais pourquoi pas.

    Tu peux aussi regarder le template ASP MVC SPA qui utilise Web API et un serveur OAuth.

  5. #5
    Membre expérimenté Avatar de DotNET74
    Homme Profil pro
    Watch R&D Engineer & Apprenti .NET
    Inscrit en
    août 2003
    Messages
    1 984
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Watch R&D Engineer & Apprenti .NET

    Informations forums :
    Inscription : août 2003
    Messages : 1 984
    Points : 1 433
    Points
    1 433
    Par défaut
    Hello,

    Merci pour ton aide ...

    Ce que je comprends pas c'est pourquoi cela fonctionne en local avec la base de données créées sous App_Data.

    Mais on ne peut pas déployer cette base de données sur un serveur SQL (Du moins je n'ai pas trouvé comment faire depuis VS).

    En effet, lorsque je déploie ma solution, l'assistant m'indique qu'aucune base de données n'est sélectionnée ...

    Alors que je l'ai bien initialisé et inclus dans le projet !
    La Théorie c'est quand on comprends tout mais que rien ne fonctionne.
    La Pratique c'est quand tout fonctionne mais qu'on ne sait pas pourquoi !

    Si vous aimez ma réponse, cliquez sur la main verte Merci

  6. #6
    Membre émérite Avatar de meziantou
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    avril 2010
    Messages
    1 223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : avril 2010
    Messages : 1 223
    Points : 2 424
    Points
    2 424
    Par défaut
    Je suppose que tu utilises une base SQL User Instances (ta chaine de connection ressemble à User Instance=true;AttachDBFilename=|DataDirectory|\InstanceDB.mdf:
    http://msdn.microsoft.com/en-us/library/ms254504.aspx
    http://stackoverflow.com/questions/1...pp-data-folder

  7. #7
    Membre expérimenté Avatar de DotNET74
    Homme Profil pro
    Watch R&D Engineer & Apprenti .NET
    Inscrit en
    août 2003
    Messages
    1 984
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Watch R&D Engineer & Apprenti .NET

    Informations forums :
    Inscription : août 2003
    Messages : 1 984
    Points : 1 433
    Points
    1 433
    Par défaut
    Hello,

    non ce n'est pas une User Instance.

    J'ai un serveur IIS chez WinHost et je peux utiliser plusieurs basede données sur cet hébergement.

    Ce que je veux dire c'est que ma solution fonctionne bien en local mais lors du déploiement VS ne crée pas la base de données sur le serveur de WinHost.

    Donc le code ne fonctionne pas puisque la base de données n'existe pas !

    Ensuite j'ai regarder le premier lien que tu as donné et télécharger la solution mais c'est un peu brut, il y a des classes et on ne retrouve pas la structure d'une application MVC.

    J'ai du mal à comprende qu'on ne puisse pas trouver un exemple simple et complet sur la mise en place et le déploiement d'une application ASP.NET MVC avec une Web API et le totu utilisant une base de données SQL Server sur le site ASP.NET !!!!!

    Merci pour ton aide
    La Théorie c'est quand on comprends tout mais que rien ne fonctionne.
    La Pratique c'est quand tout fonctionne mais qu'on ne sait pas pourquoi !

    Si vous aimez ma réponse, cliquez sur la main verte Merci

  8. #8
    Expert confirmé

    Homme Profil pro
    Développeur .NET
    Inscrit en
    novembre 2010
    Messages
    1 986
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : novembre 2010
    Messages : 1 986
    Points : 4 033
    Points
    4 033
    Par défaut
    Souvent les hébergement mutualisé ne supporte pas les bdd local, il faut que tu déploie un script créant cette base sur ton instance SQL ou une sauvegarde de ta bdd pour pouvoir la restaurer.

    J'utilisais plusieur web.config pour ça, quand j'étais en local j'avais une instance de sql server express où était déployé ma base et donc mon web.debug.config référençait cette base dans la connectionstring et sur mon hébergement j'utilisais la bdd sql server fournit et dans web.release.config c'était cette base que je référençait.

    Dès que je faisait une maj dans ma bdd je créait un script sql pour déployer sur ma bdd distante mes modifs.

    Je ne sais pas comment marche ton hébergeur pour en avoir testé 2 le fonctionnement était assez différent, l'un permettait d'accéder à la bdd à distance et donc on pouvait y accéder depuis sql management studio sur son pc sauf qu'on ne pouvait pas y restaurer une sauvegarde de bdd faite en local et l'autre on était obligé de passer par un système d'admin en ligne pour pouvoir la modifier mais par contre si on copiait une sauvegarde de bdd à la racine de son domaine on y avait accès depuis l'admin et on pouvait donc la restaurer.

  9. #9
    Membre émérite Avatar de meziantou
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    avril 2010
    Messages
    1 223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : avril 2010
    Messages : 1 223
    Points : 2 424
    Points
    2 424
    Par défaut
    Citation Envoyé par DotNET74 Voir le message
    non ce n'est pas une User Instance.
    Qu'est-ce que tu essayes de déployer ? Tu ne nous as toujours pas dis quelle type de base tu crées. On sait juste que tu as quelques chose dans APP_DATA et que tu veux le déployer sur un server SQL.

    Ensuite j'ai regarder le premier lien que tu as donné et télécharger la solution mais c'est un peu brut, il y a des classes et on ne retrouve pas la structure d'une application MVC.
    Web API ressemble au fonctionnement de ASP MVC mais ce n'est pas la même chose. De plus il ne montre que la partie authentification avec le strict minimum, donc pas un projet complet inclus dans un projet ASP MVC. J'essayerai de faire un projet complet ce soir ou demain si tu veux.

  10. #10
    Membre expérimenté Avatar de DotNET74
    Homme Profil pro
    Watch R&D Engineer & Apprenti .NET
    Inscrit en
    août 2003
    Messages
    1 984
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Watch R&D Engineer & Apprenti .NET

    Informations forums :
    Inscription : août 2003
    Messages : 1 984
    Points : 1 433
    Points
    1 433
    Par défaut
    Alors,

    ma base que j'essai de déployer est la base que crée le template ASP.NET MVC lorsqu'on exécute l'application la première fois.

    Ell a un nom bizarre et son extension est .mdf

    Ensuite, je suis preneur d'un exemple complet

    Grand merci
    La Théorie c'est quand on comprends tout mais que rien ne fonctionne.
    La Pratique c'est quand tout fonctionne mais qu'on ne sait pas pourquoi !

    Si vous aimez ma réponse, cliquez sur la main verte Merci

  11. #11
    Membre expérimenté Avatar de DotNET74
    Homme Profil pro
    Watch R&D Engineer & Apprenti .NET
    Inscrit en
    août 2003
    Messages
    1 984
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Watch R&D Engineer & Apprenti .NET

    Informations forums :
    Inscription : août 2003
    Messages : 1 984
    Points : 1 433
    Points
    1 433
    Par défaut
    Citation Envoyé par youtpout978 Voir le message
    Souvent les hébergement mutualisé ne supporte pas les bdd local, il faut que tu déploie un script créant cette base sur ton instance SQL ou une sauvegarde de ta bdd pour pouvoir la restaurer.

    J'utilisais plusieur web.config pour ça, quand j'étais en local j'avais une instance de sql server express où était déployé ma base et donc mon web.debug.config référençait cette base dans la connectionstring et sur mon hébergement j'utilisais la bdd sql server fournit et dans web.release.config c'était cette base que je référençait.

    Dès que je faisait une maj dans ma bdd je créait un script sql pour déployer sur ma bdd distante mes modifs.

    Je ne sais pas comment marche ton hébergeur pour en avoir testé 2 le fonctionnement était assez différent, l'un permettait d'accéder à la bdd à distance et donc on pouvait y accéder depuis sql management studio sur son pc sauf qu'on ne pouvait pas y restaurer une sauvegarde de bdd faite en local et l'autre on était obligé de passer par un système d'admin en ligne pour pouvoir la modifier mais par contre si on copiait une sauvegarde de bdd à la racine de son domaine on y avait accès depuis l'admin et on pouvait donc la restaurer.
    C'est exactement ce problème de déploiement que j'ai.

    Je peux accéder à mon serveur SQL distant depuis Visual Studio (Je passe par là car j'ai pas trouvé de SQL Managment Studio pour win 8).
    La Théorie c'est quand on comprends tout mais que rien ne fonctionne.
    La Pratique c'est quand tout fonctionne mais qu'on ne sait pas pourquoi !

    Si vous aimez ma réponse, cliquez sur la main verte Merci

  12. #12
    Expert confirmé

    Homme Profil pro
    Développeur .NET
    Inscrit en
    novembre 2010
    Messages
    1 986
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : novembre 2010
    Messages : 1 986
    Points : 4 033
    Points
    4 033
    Par défaut
    Normalement sql server 2008 ou 2012 fonctionne sur windows 8.
    Après je ne sais pas ce dont tu as besoin pour l’authentification sur asp mvc mais avec asp.net classique j'utilisais l'outil aspnet_regsql qui permet de crée tout le nécessaire pour la gestion de l'auth sur asp.net.
    Je ne sais pas si ce post peut t'aider:
    http://www.asp.net/identity/overview...spnet-identity

  13. #13
    Membre expérimenté Avatar de DotNET74
    Homme Profil pro
    Watch R&D Engineer & Apprenti .NET
    Inscrit en
    août 2003
    Messages
    1 984
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Watch R&D Engineer & Apprenti .NET

    Informations forums :
    Inscription : août 2003
    Messages : 1 984
    Points : 1 433
    Points
    1 433
    Par défaut
    Je parlais de SQL Managment Studio qui ne fonctionne pas sous Win 8 et non SQL Server.

    Merci pour le lien mais déjà consulter et il y que des brides de solutions et non une solution complète de A à Z ...
    La Théorie c'est quand on comprends tout mais que rien ne fonctionne.
    La Pratique c'est quand tout fonctionne mais qu'on ne sait pas pourquoi !

    Si vous aimez ma réponse, cliquez sur la main verte Merci

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 03/12/2013, 10h00
  2. Réponses: 0
    Dernier message: 25/11/2013, 16h40
  3. Réponses: 0
    Dernier message: 25/11/2013, 16h35
  4. Réponses: 0
    Dernier message: 25/11/2013, 16h27
  5. Réponses: 0
    Dernier message: 25/11/2013, 16h22

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