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

VB.NET Discussion :

Convertir un projet WindowsForm en projet Web sans tout recoder


Sujet :

VB.NET

  1. #1
    Membre régulier
    Inscrit en
    Février 2003
    Messages
    233
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 233
    Points : 72
    Points
    72
    Par défaut Convertir un projet WindowsForm en projet Web sans tout recoder
    Bonjour à tous,
    J'ai développé une petite application VisualBasic en Windows Forms (.NET Framework) sous Visual Studio Community 2015.
    Mon appli fonctionne très bien sous Windows, mais plusieurs personne me sollicitent pour l'utiliser sous Mac ou sur smartphone.
    J'envisage donc de convertir mon projet en projet Web.
    Cependant, je ne sais absolument pas comment m'y prendre et surtout j'aimerai éviter de devoir refaire tout mon code et/ou apprendre un autre langage.
    Malgré mes recherches sur le net, je ne trouve aucune piste.
    Quelqu'un pourrait m'aiguiller ?

    Question subsidiaire : une application Web devra-t-elle nécessairement être hébergée sur un serveur ou pourra-t-elle est distribuée comme une application "classique" ?

    Merci d'avance pour vos réponses.

  2. #2
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 150
    Points : 25 066
    Points
    25 066
    Par défaut
    il n'est pas vraiment possible de transposer directement une appli windows forms vers du web
    au mieux tu as mis une grosse partie du code dans une dll et tu peux la réutiliser en recodant juste l'interface (ca reste du boulot)

    en vb.net il y a asp.net (webforms ou mvc)
    et idéalement il faut maitriser html css et javascript (ou typescript) donc ca ne se fait pas en un claquement de doigt

    une appli web doit être hébergée sur un logiciel d'hébergement de site
    pour héberger de l'asp.net de base il faut IIS qui n'existe que sur windows, donc ca ne pourra pas être hébergeable sur le mac

    après il y a asp.net core qui lui doit pouvoir s'héberger sur un mac, mais bon faire une appli web pour du monoposte ca reste étrange


    il doit rester la solution de regarder vers MONO qui à était un portage de .net sur linux ou unix, enfin ca marchait sur linux et mac os à priori, à voir si ca gère le vb.net, et si ca gère bien les windows forms (je pense que oui pour les 2)
    par contre ca nécessitera surement quelques adaptations dans le code, certaines choses n'existant pas sous mono

    il y a aussi la solution du tse (bureau à distance) si ton appli est sur un serveur alors les gens peuvent se connecter dessus en remote et lancer l'appli sur un windows, mais bon ca fait cher (surtout avec un windows server pour du multi utilisateur)


    concernant les smartphones là ça se complique encore plus
    il me semble qu'il n'y a rien qui permette de développer en vb.net sur ios/android, xamarin c'est du c# seulement à priori, et ca te fera recoder tout là aussi
    (il y a des traducteurs online de vb.net vers c# mais ca risque d'être long quand même ^^)
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Membre régulier
    Inscrit en
    Février 2003
    Messages
    233
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 233
    Points : 72
    Points
    72
    Par défaut
    Bonjour Pol63 et merci de te pencher sur ma question.
    D'après tes explications, convertir mon appli sur MONO serait intéressant et ne nécessiterait le moins d'adaptations. Cela semblerait être le meilleur compromis.
    J'ai donc téléchargé et installé MONO, mais je ne trouve que "des applications console" (fichiers BAT).
    Saurais tu m'indiquer comment basculer mon code dans mono et créer une appli compatible MAC ?

    Merci d'avance

  4. #4
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Cela semble relativement nouveau et je n'ai pas lu la page, parce que je n'ai pas de MAC. Mais tu as peut-être une solution pour MAC dans ce coin-là.
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  5. #5
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 150
    Points : 25 066
    Points
    25 066
    Par défaut
    vs pour mac n'est en rien une solution ici

    http://www.mono-project.com/docs/gui/winforms/
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  6. #6
    Invité
    Invité(e)
    Par défaut
    bonjour,
    je confirme que ton application web ne pourra s’exécuter que sur un serveur web (ISS ou Apache par exemple), cela implique que ton application respect au moins deux niveau de responsabilités et trois si tu te connectes à un base de données!


    1. couche client(Formulaire Windows,Web,Dos) la couche client est lié à l'interface utilisateur!
    2. couche métier c'est là que sont défini le règle de nommage, en d'autre terme ce que fait l'application (Code)
    3. couche base de données! c'est là que nous définirons la communication avec la base de données!



    si tu respecte c'est couche tu n'auras qu'a refaire l'interface utilisateur sens intervenir sur le métier ou sur le Sql!

    notes que sur Apache tu pourras installer Mono mais qu'il ne prendra pas en charge un framworks supérieur à 3.5 car au delà c'est pour vista exclusivement!

  7. #7
    Membre régulier
    Inscrit en
    Février 2003
    Messages
    233
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 233
    Points : 72
    Points
    72
    Par défaut
    Bonjour à tous,
    Désolé pour cette réponse tardive.
    En ce qui concerne mon appli, 90% des objets de l'interface sont créés de façon dynamique dans le code, comme dans l'exemple ci-dessous :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     ReDim Preserve ChpAjtAnnTrvx(ContTrvx)
            ChpAjtAnnTrvx(ContTrvx) = New TextBox
            With ChpAjtAnnTrvx(ContTrvx)
                .Top = 50 + 70 * (ContTrvx - 1)
                .Left = 65
                .Width = 30
                .Visible = True
            End With
            Me.Controls.Add(ChpAjtAnnTrvx(ContTrvx))
            AddHandler ChpAjtAnnTrvx(ContTrvx).LostFocus, AddressOf VerifNbTrvx
    Il me suffirait de modifier un peu mon code pour créer tous mes objets dynamiquement et je pourrais m'affranchir du premier point évoqué par Dysorthographie (la couche client)

    Je n'utilise pas de base de données, mais simplement la lecture de fichiers XML, je pourrais donc là aussi m'affranchir du 3ème point évoque par Dysorthographie (couche base de données)

    Ainsi il ne me resterais qu'a transposer mon code (couche métier) pour le rendre compatible avec les autres systèmes en vérifiant que je ne fais pas appel à un framworks supérieur à 3.5.

    Est-ce que j'ai bien tout compris ?

  8. #8
    Membre régulier
    Inscrit en
    Février 2003
    Messages
    233
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 233
    Points : 72
    Points
    72
    Par défaut
    Petit UP

    Est-ce que j'ai bien tout compris ?

Discussions similaires

  1. Réponses: 8
    Dernier message: 05/05/2010, 18h46
  2. Projet Silverlight - ASP.Net & Web Service
    Par CARNIBAL dans le forum Silverlight
    Réponses: 8
    Dernier message: 10/04/2009, 14h33
  3. Mise à jour projet web sans compiler
    Par PNL dans le forum Développement Web en Java
    Réponses: 4
    Dernier message: 16/01/2009, 18h36
  4. Publier un projet C# pour le web
    Par deejay2221 dans le forum C#
    Réponses: 1
    Dernier message: 01/06/2008, 04h49
  5. tranformer projet java en projet web
    Par vain_mich dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 23/07/2007, 12h10

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