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

ASP.NET Discussion :

Utiliser un Winform user control dans un projet ASP [Débutant]


Sujet :

ASP.NET

  1. #1
    Membre régulier

    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Janvier 2010
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2010
    Messages : 120
    Points : 120
    Points
    120
    Billets dans le blog
    1
    Par défaut Utiliser un Winform user control dans un projet ASP
    Bonjour,
    Je crois que je vais être déçu : j'ai commencé à développer une application desktop en C# avec VS2015 ; j'envisage de programmer la version online avec ASP.
    Or une grande partie du code de mon application desktop se trouve :
    - dans un shared project
    - dans une classe qui hérite du control panel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    using System.Windows.Forms;
    using AlmicantaratSharedProject.SkyMap;
    using AlmicantaratSharedProject.MathTools;
    using AlmicantaratSharedProject.Ephemeris;
     
    namespace AlmicantaratDesktop
    {
        public partial class SkyPanel : Panel
        {
    - et dans des user controls :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    using System.Windows.Forms;
    using AlmicantaratSharedProject.Ephemeris;
    using AlmicantaratSharedProject.MathTools;
     
    namespace AlmicantaratDesktop
    {
        public partial class ControlCoordinates : UserControl
        {
    J'espérais utiliser ces classes dans mon projet ASP. En deux mots, je souhaiterais glisser/déposer un SkyPanel et mes user controls sur une Webform.

    Est-ce possible ?
    jdd deschamps
    RPL - VB6 - C# - Wordpress - Python3 - Xamarin

  2. #2
    Membre expert Avatar de jopopmk
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2011
    Messages
    1 856
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Mars 2011
    Messages : 1 856
    Points : 3 570
    Points
    3 570
    Par défaut
    Salut,

    à ma connaissance, oui, tu vas être déçu : ce n'est pas possible ... De la même manière que tu n'utilises pas les contrôles WinForm en WebForm (même si certains portent des noms de classe identiques)
    Plus je connais de langages, plus j'aime le C.

  3. #3
    Membre régulier

    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Janvier 2010
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2010
    Messages : 120
    Points : 120
    Points
    120
    Billets dans le blog
    1
    Par défaut Ne pouvant utiliser des winform user controls dans ASP, comment procéder ?
    Merci pour cette réponse.

    Alors comment procéder dans ce cas ?
    Feriez-vous le projet ASP dans la même solution que l'application desktop ?
    J'ai beaucoup de code "métier" dans AlmicantaratSharedProject. Puis-je faire référence à un Shared Project dans un projet ASP ? Cela me permettrait au moins de réutiliser la couche métier...
    Faut-il que je fasse une Portable Class Library (PCL) plutôt qu'un Shared Project ?
    jdd deschamps
    RPL - VB6 - C# - Wordpress - Python3 - Xamarin

  4. #4
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Points : 9 743
    Points
    9 743
    Billets dans le blog
    3
    Par défaut
    Citation Envoyé par jdddeschamps Voir le message
    Alors comment procéder dans ce cas ?
    Feriez-vous le projet ASP dans la même solution que l'application desktop ?
    Non, WinForms et ASP.NET sont 2 technos différentes et les user controls ne sont pas compatibles. Cela est logique étant donné les différences fondamentales entre ces 2 technos. En plus certains contrôles disponibles en WinForms ne sont pas disponibles en ASP.NET et vice-versa. Donc tu dois réecrire ton composant.

    Autre point important à noter, Microsoft va abandonner ASP.NET WebForms (qui utilise les user controls). Donc si tu en as la possibilité, oriente ton projet vers MVC ou WebApi et laisse tomber WebForms car une fois que ASP.NET Core sera RTM (actuellement en RC), ca sera obsolète... C'est juste un conseil, on ne connait pas les contraintes autour de ton projet.

    Citation Envoyé par jdddeschamps Voir le message
    J'ai beaucoup de code "métier" dans AlmicantaratSharedProject. Puis-je faire référence à un Shared Project dans un projet ASP ? Cela me permettrait au moins de réutiliser la couche métier...
    Faut-il que je fasse une Portable Class Library (PCL) plutôt qu'un Shared Project ?
    Bien sûr il est possible de faire cela. Quand à utiliser une PCL c'est surtout utile pour faire du cross-platform, par exemple une appli WinForms + une appli Windows Phone + une appli Android avec Xamarin. Autrement, ca n'a que peu d'intérét.
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

  5. #5
    Membre régulier

    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Janvier 2010
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2010
    Messages : 120
    Points : 120
    Points
    120
    Billets dans le blog
    1
    Par défaut ASP.NET WebForms vs MVC / Shared Project vs PCL
    Citation Envoyé par DotNetMatt
    Autre point important à noter, Microsoft va abandonner ASP.NET WebForms (qui utilise les user controls). Donc si tu en as la possibilité, oriente ton projet vers MVC ou WebApi et laisse tomber WebForms
    Merci !! J'étais en train de comparer les deux pour savoir dans lequel m'investir ! voilà que mon choix est fait

    Citation Envoyé par DotNetMatt
    Quand à utiliser une PCL c'est surtout utile pour faire du cross-platform, par exemple une appli WinForms + une appli Windows Phone + une appli Android avec Xamarin.
    C'est le but en effet... il faut que je vois si je dois utiliser un Shared Project ou une PCL...
    jdd deschamps
    RPL - VB6 - C# - Wordpress - Python3 - Xamarin

  6. #6
    Membre expert Avatar de jopopmk
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2011
    Messages
    1 856
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Mars 2011
    Messages : 1 856
    Points : 3 570
    Points
    3 570
    Par défaut
    Perso j'ai rien contre le fait de mixer les techno dans une même solution si ça reste dans le même périmètre/métier, mais ça n'engage que moi. Pour ce qui est de l'ASP.NET remplacé par MVC ça m'enchante pas des masses, j'avais testé MVC y'a un bail et j'avais trouvé ça un peu opaque. Enfin bon c'est hors sujet.
    Plus je connais de langages, plus j'aime le C.

  7. #7
    Membre expérimenté Avatar de bossun
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 359
    Points : 1 443
    Points
    1 443
    Par défaut
    Il ne faut jamais perdre complétement espoir. Même si c'est limité à IE

    http://www.codeproject.com/Articles/...ontrol-as-an-A

    https://social.msdn.microsoft.com/Fo...forum=winforms

    http://www.codeguru.com/csharp/.net/...rols-in-IE.htm


    Bon courage et excellent week-end
    il vaut mieux prendre son pied que de se prendre la tête!!

    http://bossun.noxblog.com

  8. #8
    Membre régulier

    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Janvier 2010
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2010
    Messages : 120
    Points : 120
    Points
    120
    Billets dans le blog
    1
    Par défaut solution limitée à IE
    Merci pour vos conseils.

    Comme la solution d'utiliser un Winform user control dans ASP.NET est limité à IE, j'abandonne. De plus, j'ai l'impression que le contrôle est exécuté par le client au lieu d'être exécuté par le serveur. En terme de cyber sécurité, c'est choquant. C'est pourquoi, en général, il faut désactiver les activeX dans les navigateurs.

    J'attaque les tuto ASP.NET MVC, va y avoir du boulot !
    jdd deschamps
    RPL - VB6 - C# - Wordpress - Python3 - Xamarin

  9. #9
    Membre régulier

    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Janvier 2010
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2010
    Messages : 120
    Points : 120
    Points
    120
    Billets dans le blog
    1
    Par défaut Web Forms vs MVC
    Citation Envoyé par DotNetMatt Voir le message
    Autre point important à noter, Microsoft va abandonner ASP.NET WebForms (qui utilise les user controls).
    Je reviens sur ce point. Certes ASP.NET 5 ne supporte plus Web Forms mais Microsoft a-t-il officiellement annoncé l'abandon de Web Forms ? je ne trouve pas grand chose à ce sujet à part quelques posts :
    http://blog.dcube.fr/blog/2015/01/05...-vs-web-forms/

    Je crois qu'en fin de compte MVC sera trop compliqué pour moi. L'Application online que je souhaite développer ne servira qu'à promouvoir les applications mobiles. Je vais donc me contenter de Web Forms ...
    jdd deschamps
    RPL - VB6 - C# - Wordpress - Python3 - Xamarin

  10. #10
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Points : 9 743
    Points
    9 743
    Billets dans le blog
    3
    Par défaut
    Il n'y a pas de contre indication à continuer à faire du WebForms, mais oui je confirme que dans la prochaine version d'ASP.NET ce ne sera plus possible. Il y a pas mal de littérature sur le sujet sur internet, en voici un exemple : Top 10 Changes in ASP.NET 5 and MVC 6 (voir le point 2 - No More Web Forms).

    ASP.NET WebForms a été crée initialement pour remplacer l'ASP classique. Microsoft concentre désormais ses efforts sur MVC / WebApi car ces technos sont aujourd'hui les plus utilisées, ce qui n'était pas le cas avant.

    Avec l'accélération du cycle de vie des produits Microsoft, on voit par exemple que les périodes de support par Microsoft sont raccourcies. Donc si ton projet a une durée de vie moyenne / longue, alors il faudra tôt ou tard migrer vers MVC / WebApi car le framework .NET 4.6 / 4.6.1 (le dernier qui supporte WebForms) verra son support stoppé un jour où l'autre (le 4, 4.5 et 4.5.1 ne sont déjà plus supportés pour te donner une idée). De même, si tu as besoin des nouveautés introduites par ASP.NET Core (la prochaine version), comme par exemple l'héberment sous Linux, tu seras coincé car tu devras migrer vers MVC / WebApi.

    Comme je l'ai déjà dit, on ne connait pas tes contrainte, mais ca peut valoir le coup de te mettre le pied à l'étrier sur MVC dès maintenant car il est sûr à 100% que ca te servira dans le futur Tu pourras trouver de l'aide sur le forum ASP.NET MVC, ou encore avec les tutoriaux rédigés par nos membres : Tutoriels ASP.NET MVC.
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

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

Discussions similaires

  1. Utilisation de Package Subgurim.Maps dans un projet ASP.Net WebForms C#
    Par Fredo97 dans le forum Développement Web avec .NET
    Réponses: 0
    Dernier message: 05/03/2014, 11h33
  2. Utilisation de User Control dans le modèle MVC
    Par Subteranea dans le forum Windows Forms
    Réponses: 2
    Dernier message: 08/02/2013, 10h31
  3. Réponses: 2
    Dernier message: 03/01/2012, 17h13
  4. Réponses: 4
    Dernier message: 07/10/2009, 15h39
  5. [C#] Comment utiliser des dll win 32 dans un projet .NET
    Par Mickey.jet dans le forum Delphi .NET
    Réponses: 2
    Dernier message: 31/05/2005, 13h45

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