none
Problème d'architecture produit RRS feed

  • Discussion générale

  • Bonjour à tous,

    Je développe une application pour la société dans laquelle je travaille. Je me pose différentes questions sur la façon dont mon équipe et moi allons créer la structure du projet. Nous devons développer :
    - Une application Web ASP.Net MVC pour la gestion et l’exploitation des données ;
    - Un service Windows qui récupère des données sur le réseau du client (c'est données se trouvent sur les postes clients) ;
    - Des applications mobiles (Windows Phone, Android et IPhone) (avec peut-être Xamarin);

    Nous exposons nos données SQL via OData (v4) qui est une obligation. 

    Actuellement, la solution Visual Studio est conçue comme suit :

    - Projet ASP.Net MVC (interface graphique, authentification,…) ;
    - Projet ASP.Net Web API (OData, WCF pour la communication entre le service Windows et le site web, sécurité des données,…) ;
    - Projet Service Windows ;
    - ...

    Mon problème est le suivant : nous avons séparé le projet Web et la partie OData dans 2 projets distincts et nous nous demandons si ça ne va pas nous compliquer le développement ? Devrait-on plutôt réunir c’est 2 projets dans 1 seul projet Web ASP.Net MVC ?

    Avez-vous des solutions à m’apporter ? Merci d’avance pour vos réponses.
    • Type modifié Aurel Bera jeudi 10 juillet 2014 12:56 disc
    jeudi 3 juillet 2014 11:59

Toutes les réponses

  •  Bonjour,

    Etant donnée que vos données doivent être explosée publiquement à cause des terminaux mobiles, vous avez la possibilité de mettre les services web et le code MVC dans le même projet ASP .NET...

    Si vous deviez exposer potentiellement vos services web dans un réseau interne uniquement, il faudrait dans ce cas faire plustôt 2 projets.

    De manière générale, découpez vos applications de manière SIMPLE ! C'est à dire que rien ne vous empêche de mettre tout votre code dans un même et unique projet (bien évidemment pour les terminaux mobiles cela ne pourra pas être possible). Il faut juste respecter le découpage des classes à l'intérieur de ce projet...
    Plus-tard, il sera facile de découper votre projet en plusieurs autre projets lorsque le besoin s'en fera ressentir (réutilisabilité de code dans d'autres projets ou projet qui devient trop grand...).

    Cordialement


    Gilles TOURREAU - MVP C#
    Architecte logiciel/Consultant/Formateur Freelance - P.O.S Informatique
    Blog : http://gilles.tourreau.fr - Suivez-moi sur Twitter
    - MCPD : Enterprise Developper / Windows Developper 3.5 / ASP .NET 3.5/4.0
    - MCSA : SQL Server 2012
    - MCITP : SQL Server 2008 Developper
    - MCTS : ADO .NET 3.5 / SQL Server 2008 Developper / Windows Forms 3.5 / ASP .NET 3.5/4.0 / TFS 2010 / Windows Azure

    jeudi 3 juillet 2014 12:54
    Modérateur
  • Bonsoir,

    Merci pour la réponse, je vais donc partir sur 2 projets (Pour la partie Web). Pour le WCF, je me pose encore des question sur cette partie car ce n'est pas compatible avec WP. J'avais également pensé à utiliser SignalR.

    Avez-vous d'autres solution de remplacement ?
    vendredi 4 juillet 2014 09:49
  • Bonjour

    WCF c'est bien compatible avec Windows Phone.

    How to connect to a local web service from the Windows Phone 8 Emulator

    Bien cordialement, 


    Aurel BERA, MSFT
    MSDN Community Support. LE CONTENU EST FOURNI "TEL QUEL" SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE.
    S'il vous plaît n'oubliez pas de "Marquer comme réponse" les réponses qui ont résolu votre problème. C'est une voie commune pour reconnaître ceux qui vous ont aidé, et rend plus facile pour les autres visiteurs de trouver plus tard la résolution.

    lundi 7 juillet 2014 08:50
  • Bonjour,

    Apparement ça n'est plus compatible WP 8.1

    ttp://social.msdn.microsoft.com/Forums/wpapps/en-US/9ab43a4c-499a-4f2e-81e5-c1ab5acbe9bf/wcf-add-service-reference-not-supported-for-windows-phone-81-xaml-applications?forum=wpdevelop


    lundi 7 juillet 2014 15:24
  • Bonjour,

    Dans ce cas misez plustôt sur les WebAPI d'ASP .NET qui sont relativement simple d'utilisation...

    Cordialement


    Gilles TOURREAU - MVP C#
    Architecte logiciel/Consultant/Formateur Freelance - P.O.S Informatique
    Blog : http://gilles.tourreau.fr - Suivez-moi sur Twitter
    - MCPD : Enterprise Developper / Windows Developper 3.5 / ASP .NET 3.5/4.0
    - MCSA : SQL Server 2012
    - MCITP : SQL Server 2008 Developper
    - MCTS : ADO .NET 3.5 / SQL Server 2008 Developper / Windows Forms 3.5 / ASP .NET 3.5/4.0 / TFS 2010 / Windows Azure

    lundi 7 juillet 2014 21:16
    Modérateur
  • Il y a déjà plusieurs astuces que vous pouvez les trouver même dans le lien que vous proposez (notamment REST API).

    Bien cordialement,

     

    Aurel BERA, MSFT
    MSDN Community Support. LE CONTENU EST FOURNI "TEL QUEL" SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE.
    S'il vous plaît n'oubliez pas de "Marquer comme réponse" les réponses qui ont résolu votre problème. C'est une voie commune pour reconnaître ceux qui vous ont aidé, et rend plus facile pour les autres visiteurs de trouver plus tard la résolution.


    mardi 8 juillet 2014 06:52
  • Bonjour,

    Merci pour toutes ces réponses. Je précise que le but d'utiliser le WCF dans mon projet était de permettre une communication en dual binding : pour l'envoi d'ordre sur le service Windows mais aussi le suivi temps réelle de la progression du travail demandé (avec le callback). Je ne pense pas que les Web API me permettent de faire ça ?

    Cordialement.

    mercredi 9 juillet 2014 12:44