Aspnetcore: Prise en charge de Visual Basic .NET (VB.NET) dans ASP.NET Core

Créé le 3 janv. 2018  ·  91Commentaires  ·  Source: dotnet/aspnetcore

De nombreuses questions ont été posées sur la prise en charge de VB.NET dans ASP.NET Core au cours des dernières années. Si vous les suivez, ils mènent tous à des impasses - soit fermés sans véritable réponse, soit déplacés vers d'autres référentiels qui ne sont pas liés à ASP.NET Core (comme quelque part dans l' organisation dotnet ).

Pendant ce temps, il a été question de soutenir VB. Il est tout à fait compréhensible qu'ASP.NET Core n'ait pas pris en charge VB dès le départ. Le projet subissait de nombreux changements rapides, il était donc logique de se concentrer initialement sur C # et d'ajouter la prise en charge d'autres langages plus tard. Mais l'idée de soutenir VB semble s'être perdue en cours de route.

Voici une brève chronologie:

16 déc.2014:

Nous prévoyons d'avoir des points d'extensibilité afin que d'autres langages comme VB, F #, etc. puissent être ajoutés via la forme d'un package de support ou autre.
https://github.com/aspnet/Home/issues/236#issuecomment -67046039

25 avril 2015:

Salut tout le monde, bonne nouvelle! Nous avons annoncé des plans pour prendre en charge VB dans ASP.NET 5 / DNX!
https://github.com/aspnet/Home/issues/236#issuecomment -96003847

Nous sommes ravis d'annoncer aujourd'hui qu'ASP.NET 5 bénéficiera d'une prise en charge complète de Visual Basic (à la fois pour les outils et l'exécution, y compris la prise en charge de l'exécution multiplateforme).
https://blogs.msdn.microsoft.com/webdev/2015/04/24/making-it-better-asp-net-with-visual-basic-14/

19 novembre 2016:
Le support VB disparaît de la feuille de route:

 |1.0.4|Feb 2017|
 |1.2|Q2 2017|

-## Future Work
-
-Visual Basic support.
-
 <em><sup>*</sup> References to yearly quarters (Q1, Q2, Q3, Q4) are calendar-based</em>

https://github.com/aspnet/Home/wiki/Roadmap/_compare/2138fe4ff8a437e8edefc333189aaa8d9b5afb6a...b49bda1f8f40975b39d14d199a9ddac0a2beb45e

12 déc.2017:

il n'est pas prévu d'ajouter un modèle VB pour ASP.NET Core
https://github.com/aspnet/Home/issues/2305#issuecomment -351501913

Le support VB semble avoir disparu

"Cela ne fonctionne pas encore, mais nous prévoyons d'autoriser VB"

à

"Il y aura un support complet pour VB!"

à

"VB n'est pas supporté, mais chut, ne le dis à personne".

Ma première question est donc:

Que s'est-il passé et pourquoi n'y a-t-il pas eu d'annonce ou de discussion avec la communauté à ce sujet?

Il semble étrange de passer de l'annonce du support de VB.NET dans ASP.NET Core dans un article de blog officiel à ne pas le supporter du tout sans aucun retour. Y a-t-il eu une annonce à ce sujet? S'il y en avait, ce n'était certainement pas largement publié.

Ma prochaine question, et plus importante, est:

Que peut faire la communauté VB pour aider à ajouter la prise en charge de VB.NET à ASP.NET Core?

Existe-t-il des modèles de projet que nous pouvons écrire?
Existe-t-il des générateurs de code que nous pouvons implémenter?
Que pouvons-nous faire pour rendre ASP.NET Core aussi génial pour les développeurs VB que pour les développeurs C #?


J'ai réuni une simple application ASP.NET Core (lien supprimé car le dépôt est obsolète) dans VB en créant une application console .NET Core, en modifiant le fichier de projet et en copiant les classes générées à partir de ASP.NET Core C # modèle. Cela fonctionne bien, et même si ce n'est que très basique, je ne vois aucune raison pour laquelle VB.NET ne peut pas être pris en charge.

Commentaire le plus utile

+1
Visual Basic est toujours le langage le plus important du monde .NET. VB encore beaucoup de fans et utilise aujourd'hui! Bien que beaucoup de gens travaillent dans un projet C # sur leur lieu de travail, mais je crois que beaucoup de gens comme moi aiment utiliser VB sur leur propre projet.

Tous les 91 commentaires

cc @DamianEdwards

J'ai connecté un problème il y a longtemps pour utiliser VB avec .cshtml dans le repo Razor , depuis lors, je n'ai vu aucune action 😟.
Il y a quelques semaines, j'ai vu un excellent exemple de @DamianEdwards qui démontre une application VB ASP.NET Core hyprid ici

En plus de l'excellente sommation @reduckted , la documentation de Microsoft sur la syntaxe Razor pour ASP.NET Core (au 2017-10-18) contient encore de nombreuses références à Visual Basic et à l'utilisation de fichiers .vbhtml:

Cette restriction ne s'applique pas aux fichiers .vbhtml Razor, car la syntaxe Visual Basic place des parenthèses autour des paramètres de type générique au lieu de crochets.

Cependant ScottAddie @ MSFT avait publié un commentaire le 21/07/2017:

ASP.NET Core ne prend pas encore en charge VB.NET. Vous devrez vous en tenir à ASP.NET pour le moment.

Les fichiers Visual Basic / vb.net / .vbhtml vont-ils donc être inclus dans .Net Core? Et si oui, quand ??

Comment pouvons-nous contribuer à concrétiser ce soutien? J'adorerais voir le support de VB.Net et F #!

J'ai envoyé un PR pour supprimer les références VBHTML de la documentation ASP.NET Core: https://github.com/aspnet/Docs/pull/5201

Il n'est actuellement pas prévu d'introduire la prise en charge de VBHTML dans ASP.NET Core.

Nous avons des modèles F # pour ASP.NET Core, qui sont installés dans le cadre du SDK .NET Core.

@Eilon Il n'est actuellement pas prévu d'introduire la prise en charge de VBHTML dans ASP.NET Core.

Personnellement, je ne suis pas préoccupé par le support VBHTML car je n'utilise pas de pages Razor et je n'ai pas l'intention de le faire. Comme mentionné par @AnthonyDGreen (https://github.com/dotnet/vblang/issues/238#issuecomment-354927626), cela n'a pas de sens d'y ajouter le support VB car il était rarement utilisé dans MVC 5, et, J'imagine, prendrait une très grande quantité de travail pour pas beaucoup de gain.

@Eilon Nous avons des modèles F # pour ASP.NET Core, qui sont installés dans le cadre du SDK .NET Core.

OK, mais je ne suis pas vraiment sûr de votre point de vue. Si quoi que ce soit, cela ne renforce-t-il pas simplement le fait qu'il devrait également y avoir des modèles VB?

Les modèles F # n'ont-ils pas été créés par la communauté F #? Si l'équipe de Microsoft ne crée pas de modèles VB, pourquoi les modèles VB ne peuvent-ils pas être créés par la communauté VB?

@reduckted la question se résume à la demande et à son coût - à la fois le coût initial et le coût permanent. La demande a été très faible, comme indiqué précédemment. Le coût de création d'un ensemble initial de modèles n'est peut-être pas élevé, mais quelqu'un doit les maintenir. Avec F #, nous avons des personnes chez Microsoft qui s'engagent à les maintenir. Nous n'avons pas de telles personnes pour VB pour le moment.

En outre, une limitation avec les modèles F # est qu'ils se concentrent davantage sur le côté API des choses; c'est-à-dire pas de rasoir ou de CSHTML (car il n'y a pas de FSHTML). Avec les utilisateurs de VB, je suppose que la plupart des utilisateurs de VB s'attendent à une expérience VBHTML pour MVC, et le coût de production est énorme - des mois et des mois de travail. Donc, il n'est pas clair pour moi que l'ajout de modèles VB limités serait particulièrement précieux.

@Eilon Avec les utilisateurs de VB, je suppose que la plupart des utilisateurs de VB s'attendent à une expérience VBHTML pour MVC ...

Vous voudrez peut-être parler à @AnthonyDGreen , car c'est exactement l'opposé de ce qu'il a dit dans le commentaire auquel j'ai précédemment lié (https://github.com/dotnet/vblang/issues/238#issuecomment-354927626). Je vais le citer cette fois (je souligne):

Le moteur de rasoir .vbhtml de MVC 5 n'a pas été porté sur Core principalement parce que moins de 1% de tous les projets Web VB l'ont utilisé après 5 versions.

@reduckted - intéressant, c'est une nouvelle pour moi. Je repense aux jours Web Forms, qui a été initialement conçu avec des concepts familiers aux développeurs VB (VB6, en particulier), et Web Forms était très centré sur HTML (sorta), ce qui m'a amené à penser que VBHTML serait le plus intéressant pour ce groupe de personnes. Là encore, c'est ~ 15 ans anec-data 😄

BTW pour être clair, nous n'avons pas dit que nous n'allons jamais le faire - juste que ce n'est actuellement dans aucun plan.

Je suis un fan de VB 😄, ce que je pense que .vbhtml sera prêt à l'emploi, l'approche hybride que j'ai mentionnée précédemment ne suffit pas pour tous les gars de VB, mais c'est bien dans certains cas. Ma question est de réimplémenter le Razor pour émettre VB au lieu de C # est-ce que ça va marcher, ou le MVC est étroitement couplé sur le cshtml C #?

@hishamco Malheureusement, Razor a été implémenté pour que VB et C # soient des chemins séparés. J'ai parlé à quelques personnes impliquées et c'est un projet assez important.

@KathleenDollard Il existe d'autres projets .NET Core qui prennent en charge les ViewEngines personnalisés pour les types de fichiers .pug et .md .

Nous pouvons sûrement le faire fonctionner pour les fichiers .vbhtml razorpages en utilisant un .vbproj avec <Project Sdk="Microsoft.NET.Sdk.Web"> .

@ tb-mtg Tout est open source si vous voulez l'explorer et voir ce que ces projets ont fait. Les gens qui l'ont écrit m'ont dit que c'était un gros effort. La taille de l'effort et l'adoption extrêmement faible de vbhtml dans les versions antérieures de MVC en font une vente difficile.

@KathleenDollard Je vais répéter ma question à nouveau, si je ré-implémente le Razor pour émettre VB au lieu de C # est-ce que ça va marcher, ou le MVC est étroitement couplé sur le cshtml C #?

@hishamco ce serait une bonne question pour @rynowak . Ryan?

Le moteur de compilation d'exécution de MVC utilise l'infrastructure Roslyn pour compiler C # et s'attend / exige que les paramètres du système de projet C # soient transmis via .deps.json . MVC n'a pas de couplage étroit avec le code généré, mais fournit plutôt une infrastructure pour compiler des vues C # au moment de l'exécution à l'aide des paramètres générés par un projet C #.

Quiconque souhaite compiler VB au moment de l'exécution devra implémenter un moteur de vue qui le fait.

Merci @rynowak pour votre clarification

utilise l'infrastructure Roslyn pour compiler C # et s'attend / exige que les paramètres du système de projet C # soient transmis via .deps.json

Si j'implémente un moteur de vue VB - ou clone C # one avec modification -, quels paramètres dois-je passer dans .deps.json pour que cela se produise?

+1
Visual Basic est toujours le langage le plus important du monde .NET. VB encore beaucoup de fans et utilise aujourd'hui! Bien que beaucoup de gens travaillent dans un projet C # sur leur lieu de travail, mais je crois que beaucoup de gens comme moi aiment utiliser VB sur leur propre projet.

@AnthonyDGreen @KathleenDollard

Le moteur de rasoir .vbhtml de MVC 5 n'a pas été porté sur Core principalement parce que moins de 1% de tous les projets Web VB l'ont utilisé après 5 versions.

Qu'est-ce que les 99% restants utilisent alors?

Angular, ou d'autres bibliothèques frontales similaires, je suppose. C'est ce que j'utilise.

En fait, c'est aussi exactement ce que je prévois de faire avec nos nouveaux projets Web passant à Angular à partir d'ASP.Net MVC Razor, je dois faire 4 nouveaux projets Web cette année, donc si quelqu'un continue à compter .. LOL

Le VB est une langue populaire depuis de nombreuses années! En tant qu'entreprise, nous avons certainement de nombreux extraits de code que nous ne voudrions pas avoir à réécrire en C # Je suis sûr qu'il existe de nombreuses applications de formulaire Web à l'ancienne qui doivent être réécrites, en particulier avec les nouvelles règles de l'UE qui entrent en jeu, cela signifierait que VB serait très recherché! Je trouve étonnant que Microsoft souffle si chaud et froid sur VB une minute, il est développé à égalité, ensuite c'est le pauvre parent! Oui, de nouveaux langages et frameworks sortent, mais n'abandonnez pas les anciens populaires!

Heureux que cela soit suivi ici, j'espère que cela pourrait alors voir une action.

Tous les signes (mots de belette) de MS indiquent qu'ils prévoient d'abattre VB.NET et / ou de ne rien faire et d'attendre que les autres écrivent les bits manquants. J'en ai fini avec leurs paroles farfelues, je quitte le développement VB.NET maintenant.

J'espère juste que lorsque Microsoft acquiert GitHub, il ne bénéficiera pas du même traitement que VB.Net (être laissé pour mort avec des promesses vides de support complet).

@NatShaw Je suis le PM de Visual Basic.Net.

Je ne suis pas sûr de ce que vous voulez dire à propos de la planification de la réduction de VB.NET, mais il n'est pas prévu de le faire. La stratégie de langage Visual Basic reste inchangée.

Razor for VB est problématique. Pour le flux de travail de développement principal, WebAPI est un bon flux de travail pour VB, comme illustré ici. (à part les modèles)

@ tb-mtg VB.Net n'est pas laissé pour mort. Il y a des améliorations constantes - de petites améliorations dans le langage et fonctionnent comme IOperation pour rendre la prise en charge de Visual Basic dans les analyseurs Roslyn facile à prendre en charge VB dans l'écosystème. Il est vrai que VB se concentre sur des scénarios où c'est déjà bon, et s'approprie de nouveaux scénarios plutôt que tous les nouveaux scénarios. Par exemple, Scott Hunter a déjà annoncé que VB.Net fonctionnera avec .NET Core 3.

@KathleenDollard Des morceaux manquent déjà - .Net Core 2.x - où sont tous les modèles VB? Types de référence Nullable? C # uniquement. Les plans futurs sont excellents pour l'avenir, mais VB manque déjà de choses maintenant.

C'est un thème pour que Microsoft crée une grande technologie et l'abandonne. Ils abandonnent VB, le langage qui a bâti l'entreprise et deviennent un magasin uniquement C #. Lorsqu'une nouvelle technologie est introduite, je m'attends à ce que toutes les langues soient prises en charge. Malheureusement, ce nouveau Microsoft ne fait pas un aussi bon travail qu'il y a 15 ans pour garder toutes les langues des partenaires égaux. C'est dommage, j'ai des dizaines de milliers de lignes de VB et j'espérais aller sur plusieurs plates-formes en utilisant asp.net core. Maintenant, avec des formulaires Web abandonnés dans le noyau asp.net et sans VB, je suis bloqué. Je peux changer de langue ou ??. Si je fais l'effort de changer de langue, ce sera vers autre chose que Microsoft, ce sera vers un langage qui a été conçu pour prendre en charge toutes les plates-formes. Je suis fatigué d'être écarté et renvoyé pour être un très bon développeur VB. Il est peut-être temps de prendre mon entreprise et mon code et de quitter Microsoft après 30 ans d'utilisation et de vente de plates-formes et de langages Microsoft. L'attitude condescendante de la direction .net envers VB devient trop. Il y a encore tellement de VBers parmi nous ici qui sont tellement déçus par Microsoft ces jours-ci. Ce serait mieux si VB était rendu open source afin que la communauté puisse le faire progresser sur toutes les plateformes.

@SrqComputerguy Ils abandonnent VB

Faux. @KathleenDollard a dit littéralement _il y a un jour_ dans _ce même fil_, que «la stratégie du langage Visual Basic reste inchangée». (commentaire)

@SrqComputerguy C'est dommage, j'ai des dizaines de milliers de lignes de VB et j'espérais aller sur plusieurs plates-formes en utilisant le noyau asp.net. Maintenant, avec des formulaires Web abandonnés dans le noyau asp.net et sans VB, je suis bloqué.

Les formulaires Web sont une technologie ancienne (pratiquement ancienne selon les normes logicielles), il n'est donc pas surprenant qu'elles ne soient pas prises en charge dans .NET Core (avec VB.NET _ ou C #). Consultez ce billet de blog plus tôt cette semaine sur l'utilisation de VB.NET avec ASP.NET Core.

@SrqComputerguy Si je fais l'effort de changer de langue Ce sera vers autre chose que Microsoft, ce sera vers un langage qui a été construit pour supporter toutes les plates-formes .

VB.NET _est_ multiplateforme, mais pas avec les formulaires Web.

@SrqComputerguy Ce serait mieux si VB était rendu open source pour que la communauté puisse le faire progresser sur toutes les plateformes.

😕 C'est vrai. https://github.com/dotnet/vblang

@reduckted C # a le modèle 'ASP.NET Core Web Application' - VB n'en a pas. Est-ce exact? Types de référence non nullables - pas pour VB.

La stratégie est déjà que VB n'est plus un citoyen de première classe - pas de changement! L'article @KathleenDollard links est plutôt insultant, nous disant que ces nouvelles fonctionnalités brillantes ne sont pas bonnes pour nous car elles rendraient notre code VB trop désordonné. Quel tas d'absurdités. Exemples:

  • VB 15 est livré avec un sous-ensemble des nouvelles fonctionnalités de C # 7.0
  • Nous concentrerons l'innovation sur les principaux scénarios et domaines dans lesquels la VB est populaire.
  • Cependant, VB 15 n'obtient pas de fonctionnalités telles que les expressions is, les variables de sortie et les fonctions locales, ce qui ferait probablement plus de mal que de bien à la lisibilité de VB et augmenterait considérablement son nombre de concepts.

C'est fini. Ils abasourdissent.

L'ancienne technologie ne signifie pas qu'elle n'est pas utile. Les WebFroms fonctionnent très bien pour les applications commerciales où nous n'avons pas besoin de référencement, mais nous avons besoin de plates-formes multiples. WebForm donne l'apparence et la convivialité de la version winform et agit de la même manière. Cela a également de nombreux scénarios commerciaux qui fonctionnent bien. Tout ne doit pas nécessairement être une application angular.js C # MVC et cela ne devrait pas non plus être le cas. Pourtant, ce sont les seuls outils que MS améliore actuellement.

Pourquoi les pages Razor (qui sont des pages asp mises à jour pour .net) reçoivent-elles l'amour de C # dans le noyau et non de VB?

MS a même acheté le projet Mono, alors maintenant, il prend en charge C # en premier et ce n'est que s'ils obtiennent l'accord que VB y trouve un peu d'amour.

MS donne plus d'amour à Python qu'à VB. Python est plus un langage multiplateforme que C # ou VB, c'est là que ce VBer ira probablement à l'avenir.

C'est triste que le MS s'appuie sur un langage qui ne sait toujours pas comment dire la fin d'une ligne sans un;

Est-ce que MS a même plus une équipe VB? Ils n'ont pas de présence sur le Web. Pour les progrès, nous devrons chercher ailleurs.

C'était bien tant que ça durait. VB RIP.

Salut,

Quelqu'un chez Microsoft peut-il reconsidérer l'effort de compiler vb dans des vues rasoir (.net core)? Je pense que project blazor permet une nouvelle façon de partager beaucoup de code existant dans vb pour créer de nouvelles applications Web.

VB .NET était une fois de plus populaire car vous pouvez faire les mêmes choses que vous pouvez avec C #. Je pense que si vb est laissé pour compte, vous mettrez fin à sa popularité.

Nous portons une très grande application VB winforms sur une application Web. Nous réécrivons à 50% notre framework en JS, mais avec blazor, ce serait plus rapide, plus propre et nous pourrions partager beaucoup de code existant. Ce serait génial si nous pouvions également coder les vues avec VB au lieu de C #. Tout n'est pas MVC et rasoir.

Alors, peut-être que se concentrer sur Blazor réduirait l'effort?

Après avoir travaillé avec du code VB moderne et hérité pendant plusieurs années maintenant, j'ai hâte que la verbosité s'éteigne. Je pense qu'il est judicieux pour Microsoft de se concentrer sur un style de langage (C).

@mcurros

Le support du rasoir a été envisagé et reconsidéré.

Bien que ce soit très excitant, pour le moment, Blazor est un effort expérimental, sans plans de produits. Je suis d'accord que si Blazor devient un produit, cela vaut la peine de reconsidérer l'histoire de VB et je pense que cela se produira. Si cela se traduit par un changement de stratégie concernant le support VB, je ne sais pas.

Trois questions pour vous:

  • Les annonces concernant le passage de WinForms à .NET Core 3 vous amènent-elles à reconsidérer votre décision de porter le code WinForms?

  • Vous réécrivez pour le Web. Utilisez-vous un back-end VB WebAPI comme celui-ci: Combiner Angular, Visual Basic et .NET Core pour développer des applications Web modernes ?

  • Vous utilisez JS, ce qui signifie que certaines parties de votre équipe utilisent efficacement un langage entre accolades. Quelles sont les raisons pour lesquelles vous ne convertissez pas en C #?

Il n'y a rien de ce qui se fait exclusivement en C # qui ne puisse pas être fait en VB. MS fabrique les convertisseurs IL. C'est une question de volonté.

Voici une question pour vous. Si vous avez un grand nombre d'applications professionnelles qui ont une version Web .net 4.5.2 qui ressemblent à la version de bureau et agissent comme la version de bureau, comment MS suggérerait-il qu'elles passent à plusieurs plates-formes.

Est-il donc officiel que MS stupide l'idée d'inclure les développeurs VB dans la vague Asp.net Core et ne soit pas intéressé à dépenser des ressources pour cela?

@ sreenathGanga1988 Nous avons annoncé qu'il n'y avait actuellement aucun projet de prise en charge de Razor dans .NET Core sur Visual Basic.NET. WebAPI qui est dans ASP.NET Core dans le cadre de MVC est pris en charge. Seul Razor n'est pas pris en charge. Le moteur Razor est complexe et a été créé pour une seule langue.

@KathleenDollard vous pouvez créer VBHTML.Contrib pour permettre aux fans de VB de contribuer à construire un moteur de rasoir en utilisant le moteur de rasoir actuel pour prendre en charge VB

Les personnes qui ont écrit la nouvelle version de Razor pensent qu'il est très compliqué d'inclure Visual Basic, car il n'a pas été conçu pour plusieurs langues. Je n'ai pas regardé le code, mais je ferai confiance à l'opinion de ces gens. Sur cette base, je ne vais pas créer de fourchette.

Cependant, ASP.NET est open source pour une raison. Si un groupe de développeurs VB devait créer un fork n'importe où et leur prouver le contraire, ce serait plutôt cool. Je suis heureux que ce problème ou un autre problème dans ce référentiel pointe vers le projet, et si je tweetais son existence et sa progression si vous le souhaitez.

J'ai jeté les bases avec la Fondation .NET pour un espace Visual Basic (éventuellement contrib, peut-être autre chose) afin qu'il existe un moyen de gérer la propriété et de telles choses administratives pour les projets dans une communauté Visual Basic. Cependant, ils ont besoin de preuves qu'il existe une communauté qui aura des pensions fournissant ce que les gens veulent (la Fondation s'efforce d'éviter les projets morts). J'avais espéré que les modèles Entity Framework seraient cette graine, mais cela ne s'est pas bien passé. Ce n'est pas spécifique à VB, et c'est pourquoi vous voyez des choses dans les référentiels personnels: les modèles VB EF dans @bricelam , le catalogue d'outils global sur @natemcmaster , et une version fourchue d'un analyseur de ligne de commande @natemcmaster pendant que nous travaillons sur un nouveau .

Ainsi, même si un projet et un prototype ne suffisent pas à susciter l'intérêt de la Fondation, si un projet réussi émerge, il peut être déplacé vers la Fondation .NET.

Merci pour votre clarification, mais je ne sais toujours pas pourquoi le Razor a été conçu pour cibler C # uniquement alors que Roslyn peut les prendre en charge tous les deux !!

Je n'ai pas regardé le code de Razor pour savoir s'il construit directement un arbre de syntaxe, mais en supposant que c'est le cas ...

Roslyn fonctionne avec des arborescences de syntaxe brutes spécifiques, explicites, différentes pour C # et VB. Par exemple, sei-deux-points et accolades existent en C #, pas en VB. End Sub et Handles existent dans VB et non dans l'arborescence de syntaxe C #.

@KathleenDollard

Oui, je comprends que le projet blazor est expérimental, mais il se compile en assemblage Web et c'est un moyen plus simple de faire des applications multiplateformes (partage de code existant sur le serveur et les clients, j'aime Windows Server et ASP .NET donc je préfère exécuter un serveur qui prend en charge le framework .NET complet pour réutiliser notre base de code existante).

Quant à vos questions:

  1. .NET core 3 ne rend pas les applications WinForms multiplateformes, donc il n'ajoute pas trop.

  2. Je réécris pour le Web car cela rend nos applications multiplateformes. Nous utilisons un contrôleur ASP .NET pour partager le code existant, donc sur le serveur nous n'avons aucun problème. Comme je l'ai dit, nous utilisons notre propre framework, qui commence à fournir les mêmes fonctionnalités dans JS, mais nous devons réécrire à nouveau le code client et le tester, et l'interface utilisateur prend toujours au moins 80% du développement temps.

  3. Nous avons commencé à porter notre framework sur JS avant le projet blazor. La réécriture en C # ne rendra pas notre application cliente multiplateforme, elle nécessitera de toute façon de cibler le navigateur ou de la convertir en Xamarin ou autre chose, donc l'effort est le même.

Je programme en C, C ++, C #, VB, JS et je sais utiliser plusieurs piles, mais nous avons plusieurs membres dans notre équipe qui auront du mal à se convertir dans un autre langage. Quoi qu'il en soit, le but est de réutiliser notre base de code testée, pas de la réécrire. Si blazor pouvait compiler VB en vues, cela nous ferait gagner beaucoup de temps, c'est tout.

De plus, il est étrange pour les utilisateurs de comprendre qu'ils pouvaient auparavant compiler des vues rasoir dans VB .NET avec le framework complet. On dirait que vous avez laissé VB. Et tout a commencé avec .NET Core, n'était-ce pas d'abord un projet expérimental?

Pour ajouter un peu plus de contexte, nous portons trois ERP critiques, pour différents secteurs d'activité.

Cordialement.

@mcurros

Merci de partager plus d'informations sur votre scénario.

Le moteur Razor a été réécrit pour ASP.NET Core et c'est là que l'effort pour plusieurs langues n'a pas été fait. La faible utilisation de la version VB du moteur Razor était l'un des facteurs déterminants. Et oui, l'existence de Blazor rend cette décision assez douloureuse.

@KathleenDollard

Merci Kathleen pour le partage des idées. J'espère que les langues dans .NET ne commenceront pas à se concurrencer, l'une des choses les plus attrayantes avec .NET était les langues et l'interopérabilité entre elles, maintenant il semble que ce ne serait plus le cas. Maintenant, il ne suffit pas de choisir .NET comme pile de développement, je suppose que nous devrons également faire attention aux langages que nous choisirons. Dommage, c'est comme un pas en arrière.

Sur la dernière question, cependant, je pense que razor a été écrit bien avant .NET core, avec des pages Web ASP .NET et une matrice Web, donc je pense que vous voulez dire que le moteur de rasoir a été réécrit en .NET core ciblant C #. Ai-je raison?

Bonne chance.

Bonjour,
J'ai trouvé ce post: Pourquoi pas Razor? .
Que pensez-vous d'éviter complètement l'utilisation de la syntaxe Razor dans les projets ASP .NET Core et Blazor au profit d'un développement pur C # et VB.NET? Sommes-nous sûrs que nous avons besoin de la syntaxe Razor pour développer des applications Web qui doivent émettre des fichiers HTML5 et CSS?

Cordialement,
Filippo.

@filippobottega

Eh bien, c'était avant Blazor. Le problème est que vous avez besoin d'un moteur de création de modèles chez le client, et dans le cas de Blazor, c'est exactement cela. Dans blazor, le rasoir s'exécute dans le navigateur et non sur le serveur (mais il pourrait s'exécuter sur le serveur si nécessaire). Ainsi, les gens essaient de partager du code entre le client et le serveur dans le navigateur depuis des lustres. Le partage du code de validation sera un cas simple, mais dans notre cas, nous partageons des métadonnées décrivant des modèles afin que les composants puissent se configurer à l'aide de ces métadonnées.

Node.JS est devenu populaire car vous pouvez partager du code entre le navigateur et le serveur. Alors pourquoi ne pas partager du code .NET entre le navigateur et le serveur? Razor est compilé dans un assemblage Web avec votre code partagé, et c'est tout. Oui, vous pouvez compiler, exécuter et distribuer votre application, mais le navigateur a une meilleure capacité multiplateforme et vous ciblerez plus de plates-formes avec le même code. J'ai également vu WPF compilé en webassembly si vous souhaitez aller dans ce sens.

Nous préférons tirer parti des composants JS existants et les mélanger avec notre base .NET, mais nous préférons .NET et razor en remplacement d'autres frameworks JS, comme angular. C'est 10 fois plus productif si vous savez ce que vous faites, du moins pour nous.

Cordialement.

@mcurros Oui, beaucoup de choses ont été retravaillées / réécrites dans ASP.NET Core (regardez le modèle de pipeline comme exemple), y compris Razor.

@mcurros Ok, c'est vrai que nous avons besoin d'un moteur de template mais le problème est que la syntaxe Razor n'est pas supportée par un concepteur WYSIWYG solide.
Par exemple, Blazor utilise Bootstrap comme bibliothèque CSS. Il existe un concepteur intéressant pour Boostrap nommé Bootstrap Studio mais il ne prend pas en charge la syntaxe Razor.
Pour les applications de bureau WinForms, il existe un bon concepteur WYSIWYG pour concevoir rapidement des interfaces, pour XAML pareil. Il existe un concepteur que nous pouvons utiliser pour créer rapidement du HTML5-CSS avec des vues de syntaxe Razor (.cshtml / .vbhtml)?

@filippobottega
Comme les appareils capables d'exécuter des navigateurs sont de l'ordre de 10K, je pense que créer un outil WYSIWYG précis ne vaut probablement pas la peine. La tendance de nos jours est de l'exécuter dans le navigateur et de laisser le navigateur faire le rendu. Les exemples Blazor utilisent Bootstrap, mais razor est un moteur de création de modèles, vous pouvez émettre ce que vous voulez et le framework CSS / HTML que vous aimez. Les parties intéressantes sont la compilation en assemblage Web et le rasoir modifié pour fournir le routage SPA, et tout ce dont vous avez besoin pour créer un client SPA. De plus, si nécessaire, vous pouvez le rendre sur le serveur (pour les sites Web publics et l'indexation des moteurs de recherche). Je trouve que c'est plutôt cool.

Ainsi, blazor fournit une compilation d'assemblage Web en temps réel et s'exécute dans le navigateur en appuyant sur F5. C'est rapide, essayez-le.

@mcurros Merci pour votre réponse. Je suis d'accord avec vous même si je pense que la possibilité de modifier la structure des modèles par glisser-déposer en utilisant l'aperçu du navigateur peut être vraiment utile.
Si vous pensez à un aperçu du développeur où les composants peuvent être déplacés, redimensionnés et intégrés dans d'autres composants avec glisser-déposer, mettez enfin à jour le modèle CSHTML.
Par exemple, Concrete5 vous permet de modifier la mise en page à la volée.
Faites-moi savoir si vous pensez qu'un "mode conception" sera réalisable à l'avenir.

Meilleures salutations,
Filippo.

Je ne pense pas que ce sera un avenir pour VB:
La nouvelle stratégie de Microsoft pour mettre fin à la co-évolution de C # et de Visual Basic la rendra encore moins respectée par les développeurs
C # est l'avenir pour les développeurs .Net, il est donc temps de limiter l'utilisation de Visual Basic aux systèmes hérités locaux

https://www.infoworld.com/article/3167210/application-development/visual-basic-is-the-odd-man-out-in-the-new-net.html

https://www.infoworld.com/article/3254564/application-development/doing-nicely-now-visual-basics-popularity-could-take-a-hit.html
https://blogs.msdn.microsoft.com/dotnet/2017/02/01/the-net-language-strategy/

250 millions de lignes de code, dont la moitié est toujours en cours d'utilisation, doivent maintenant être réécrites. VB.Net a été tué à cause de la dernière génération de programmeurs ignorant complètement le langage lui-même (et tous les idiots qui le comparaient à Visual Basic - Apples to Oranges) avec des comparaisons absurdement fausses de performances et d'autres vecteurs. RIP VB.Net et les millions de développeurs qui perdront leur emploi en conséquence.

Comme @DamianEdwards , j'ai porté l'exemple "ASP.Net Core Web Application" de C # à VB. Il utilise (avec succès) des fichiers .cshtml Razor dans un projet VB. Je me suis assuré qu'il est compatible avec ASP.Net Core 2.1. Vous pouvez le trouver ici:

https://github.com/mevdschee/aspnetcorevb

L' exemple .cshtml pour les vues et le reste de l'application dans VB.NET , mais ce sera très cool d'utiliser le .vbhtml pour les vues 😃

Je ne sais pas ce que Microsoft a en tête, avoir un langage de programmation comme VB entre ses mains, être capable de s'approprier à la fois les zones côté client et côté serveur sur le Web

client: vbscript
serveur: vb

Polir VB est quelque chose qui vous sera bénéfique, c'est compréhensible, compréhensible et adaptable, ça fait vraiment mal et la nostalgie de savoir que vb.net n'est pas sur le web, mais c'est de votre faute et de vous concentrer uniquement sur un

Traduction Bing:
Je ne sais pas qui a Microsoft en tête, ayant entre les mains un langage de programmation comme VB pouvant s'approprier sur le Web des deux zones côté client et côté serveur

Client: VBScript
Serveur: VB

Polir VB est quelque chose que le bénéficiaire, est compréhensible, compréhensible et adaptable, donne vraiment beaucoup de douleur et de nostalgie de savoir que vb.net n'est pas sur le web, mais c'est de votre faute et de vous concentrer uniquement sur un

Je viens de remarquer ceci:
https://blogs.msdn.microsoft.com/vbteam/2018/11/12/visual-basic-in-net-core-3-0/

Cela changera-t-il quelque chose?

Cela permettra à VB.NET de continuer à être pris en charge pour ajouter les fonctionnalités déjà ajoutées en C #, mais encore une fois, non vbhtml 😕

@hishamco Non. Pendant que je partage votre :( le moteur Razor ne prend en charge que C #.

Le moteur Razor prend uniquement en charge C #

C'est ce que je voulais dire 😄

L'index Tibor montre la croissance de VB.NET, de toute façon nous avons besoin d'un rasoir vb

Comme @DamianEdwards , j'ai porté l'exemple "ASP.Net Core Web Application" de C # à VB. Il utilise (avec succès) des fichiers .cshtml Razor dans un projet VB. Je me suis assuré qu'il est compatible avec ASP.Net Core 2.1. Vous pouvez le trouver ici:

https://github.com/mevdschee/aspnetcorevb

@mevdschee Je suis curieux de

@Webbarrr J'ai converti le code C # en VB à la main et utilisé le modèle Visual Studio C # pour commencer.

@reduckted @hishamco @muratg @ tb-seance @brunojuliao @Eilon @rynowak @CheungTatMing @VBDotNetCoder @ simonmilne80 @NatShaw @SrqComputerguy @ sreenathGanga1988 @mcurros @filippobottega @mrjohnr @beefydog @mevdschee @ Baner041986 @hannespreishuber @Webbarrr

Je suis d'accord que vbhtml est une cause perdue, car le code VB.NET ne convient pas bien aux syntaxes HTML, CSS et JavaScript! Au lieu de cela, je demande vbxaml!
J'ai posté cette suggestion dans le repo VB.NET il y a des mois:
https://github.com/dotnet/vblang/issues/329
Ce sont des citations:

Laissez VB.NET surfer sur la nouvelle vague WebAssembly:
Après WebAssembly et Blazor, l'opportunité se représente: il est maintenant logique d'écrire XAML au lieu de HTML5 (les différences sont minimes) et d'écrire VB.NET au lieu de Java script (de la même manière que C # remplace Java maintenant dans Blazor).
Il existe déjà un projet nommé Ooui qui tente de le faire en C #.
Je pense que VB.NET devrait faire de même et avoir un projet pour concevoir des pages ASP.NET avec du code XAML et VB.NET, en utilisant le travail effectué dans SilverLight, Blazor et Ooui. Si cela commence maintenant, il peut croître régulièrement, en attendant que Blazor et Ooui deviennent stables, puis MS dit:
Désolé, il sera coûteux pour VB.NET de rattraper son retard!

VBlazor (.vbxaml) permettra aux développeurs de bureau expérimentés dans VB.NET et WPF / UWP de passer en douceur à ASP.NET.

IMHO utilisant XAML ou un langage de modélisation tel que Fluid rendra tout le monde heureux, car le Razor est écrit pour C # uniquement

VBLazor serait similaire à la vue de conception uwp / wpf, mais avec deux fichiers code-behind, un pour les codes serveur vb.net et un autre pour les codes client (script), avec la possibilité d'utiliser le modèle MVVM pour organiser de grands projets. XAML sera conforme à html5, les styles Xaml seront compilés en CSS et les codes de script VB.NET seront compilés en WebAssembly.

Je ferme cela car, malheureusement, il est assez clair qu'il n'est pas prévu d'ajouter des modèles de projet VB.NET pour ASP.NET Core.

@reduckted @muratg @ tb-seance @brunojuliao @rynowak @CheungTatMing @VBDotNetCoder @ simonmilne80 @NatShaw @SrqComputerguy @ sreenathGanga1988 @mcurros @filippobottega @mrjohnr @beefydog @mevdschee @ Baner041986 @hannespreishuber @Webbarrr

Enfin: un exemple de Razor VB.NET ASP.NET MVC Core fonctionnel!
https://github.com/VBAndCs/VB.NET-Razor
J'ai implémenté un simple VBRazorViewEngine dans le projet VbRazor.
Pour utiliser VBRazorViewEngine dans le projet, j'ai ajouté ces deux instructions à la méthode Startup.ConfigureServices:
`` VB.NET
services.AddTransient (Of IConfigureOptions (Of MvcViewOptions), VBRazor.VBRazorMvcViewOptionsSetup) ()
services.AddSingleton (Of IViewEngine, VBRazor.VBRazorViewEngine) ()


The VBRazor is just a VB class that implements the IVBRazor Interface:
```VB.NET
Public Interface IVBRazor
    ReadOnly Property Razor As String

End Interface

La propriété Razor utilise les littéraux xml pour composer le code HTML et le renvoie sous forme de chaîne. Exemple:
`` VB.NET
Importations de VbRazor

IndexView de la classe publique
Implémente IVBRazor

Dim students As List(Of Student)

Public Sub New(students As List(Of Student))
    Me.students = students
End Sub

Public ReadOnly Property Razor As String Implements IVBRazor.Razor
    Get
        Dim x = <html>
                    <h3> Browse Students</h3>
                    <p>Select from <%= students.Count() %> students:</p>
                    <ul>
                        <%= (Iterator Function()
                                 For Each std In students
                                     Yield <li><%= std.Name %></li>
                                 Next
                             End Function)() %>
                    </ul>
                </html>
        Return x.ToString()

    End Get
End Property

Fin de classe


To use the IndexView from the Controller, I passed it to the View method as the model data in the action method, and passed the actual model data to its constructor:
```VB.NET
Public Function Index() As IActionResult
    Return View(New IndexView(Students))
End Function

C'est tout!! Si vous exécutez le projet, vous verrez cette page Web:
VBRazor

C'était vraiment facile, mais cela nécessite plus de travail, alors j'espère que vous commencerez à contribuer à ce projet pour en faire un véritable outil productif!
La première chose à faire est de créer un modèle VB.NET pour ASP.NET MVC Core. J'ai dû créer un projet C # puis le convertir en VB!

La deuxième chose à faire est d'ajouter le support intellisense pour les attributs html dans les littéraux xml dans VB!

Le moteur de visualisation de la vérité doit analyser une sorte de modèle comme ce que nous avons vu dans Razor ou Markdown .. etc., mais ce que vous avez fait est facile car le balisage final généré à partir du code derrière lequel est ce que les classes générées de Razor ont fait

@hishamco
Je l'ai fait en quelques heures, grâce aux littéraux XML VB, qui sont presque oubliés! Je l'ai peut-être oublié jusqu'à quelques semaines, alors que j'essayais d'invoquer une nouvelle syntaxe à suggérer, alors j'ai écrit et l'éditeur l'a complété avec la balise de fermeture :) Cependant, il y a beaucoup à faire pour faire de cette idée un produit complet.

https://gitter.im/VB-NET/Volunteer
Merci.

Xml literal est une très bonne fonctionnalité que VB n'a que. En ce qui concerne vbhtml, il faut du temps et des efforts et je suis l'un des gars du passé intéressés, j'espère que nous pourrons commencer bientôt

Salut à tous,
Ceci est un rasoir VB fonctionnel (Vazor). S'amuser:
https://github.com/VBAndCs/Vazor

Salut à tous,
Veuillez soutenir cette proposition https://github.com/aspnet/AspNetCore/issues/9270
Cela peut être une alternative simple pour créer des pages vbhtml.

@VBAndCs , essayez d'éviter de publier sur d'anciens problèmes fermés. Nous essayons de conserver ce suivi des problèmes pour les bogues et les demandes de fonctionnalités dans ASP.NET Core et de minimiser les autres discussions.

@Eilon
Désolé, mais il s'agit d'une demande de fonctionnalité qui n'existe pas encore. Être fermé ne devrait pas vous déranger, mais cela apparaît toujours dans la recherche Google, il est donc important de conserver toutes les informations relatives à ce sujet ensemble.
Quoi qu'il en soit, c'est ma dernière réponse à ce sujet.
Merci

@VBAndCs , ne vous @Eilon (un manager Microsoft, pas un développeur, selon sa biographie Github). Je suppose qu'il utilise juste des mots étranges pour dire "merci pour votre formidable contribution".

@mevdschee
Merci pour votre aide :). J'imagine l'énorme pression que subit @Eilon avec des centaines de notifications par jour, des bugs à corriger, des discussions à faire, des questions à répondre et des suggestions à rejeter: dancing_men:
Donc, je vais faire référence à ce sujet dans mes propositions mew (que j'espère qu'elles continueront à venir jusqu'à ce que VB.NET rétablisse sa juste place :)).
J'espère qu'Eilon discutera des propositions importantes ou du moins les laissera s'ouvrir pendant un certain temps pour permettre à la communauté d'en discuter au lieu de passer immédiatement au bouton de fermeture.
Merci encore @mevdschee , et désolé @Eilon :)

Je suis ce fil depuis longtemps, car une solution complète appropriée, à mon avis, aurait dû figurer sur la feuille de route sans avoir à être forcée. J'ai été légèrement déçu de voir après le travail acharné de @VBAndCs que @Eilon essaierait d'empêcher quiconque d'essayer d'aider à résoudre le problème pour tant de gens! Je peux comprendre qu'il y a beaucoup de pression, mais le fait que les gens suivent toujours cela montre que c'est important pour beaucoup de gens! Continuez votre bon travail :)

Salut à tous,

Nous encourageons fortement l'activité et les fonctionnalités de la communauté, mais nous ne pouvons pas accepter certaines demandes de fonctionnalités ou corrections de bogues car elles ne sont pas une priorité suffisamment élevée pour que nous les implémentions. Cela inclut même le cas où il y a une pull request qui inclut des tests et de la documentation. Tout changement, quelle que soit sa taille, a un coût, y compris un coût à long terme, et nous devons équilibrer cela avec tous les autres travaux potentiels que nous envisageons. En ce qui concerne les moteurs de visualisation, nous sommes engagés à 100% dans le moteur de visualisation Razor avec prise en charge de C # et une excellente expérience d'éditeur dans Visual Studio, Visual Studio pour Mac et Visual Studio Code.

Nous pensons qu'il existe ici une excellente opportunité pour des personnes telles que @VBAndCs de créer des projets supplémentaires qui fonctionnent avec ASP.NET Core et s'intègrent de différentes manières. Nous sommes heureux de créer un lien vers ces projets en demandant aux gens d'envoyer des PR aux fichiers readme tels que le readme MVC .

Merci,
Eilon

À @ simonmilne80 , @mevdschee et à toute personne intéressée:
J'ai ajouté un exemple de travail de pages zml au dépôt, alors s'il vous plaît, passons à la discussion sur ce sujet: https://github.com/VBAndCs/Vazor-DotNetCore2/issues/1
et donnez à @Eilon des moments de paix :)

BTW, nous cherchons à ajouter une mention de Vazor à un prochain standup de la communauté ASP.NET . Avez-vous un article de blog que nous pouvons référencer en plus du repo GitHub?

@Eilon
Désolé d'avoir retardé ma réponse. J'avais d'abord besoin de terminer mon travail et d'écrire un fichier readme contenant des informations de base sur les balises ZML.
ZML 1.0 a maintenant son propre repo et NuGet .
J'apprécierais que vous mentionniez ZML, car il est indépendant du langage (le référentiel contient un exemple de projet avec c # et VB deux versions, et ils utilisent tous les deux les mêmes fichiers .zml.
Merci.

Je cherche à convertir mon application VB.NET WebForms en pages Razor .NET Core. Si vrai que VB ne sera pas pris en charge, vers quel chemin ASP.NET moderne dois-je migrer à la place? La réécriture de l'application en C # n'est pas une option.

@Gruski s'il y a beaucoup de code VB.NET qui est du code "bibliothèque" - c'est-à-dire pas même spécifique à WebForms - alors tout fonctionne très bien dans le monde .NET Core / Razor Pages / Blazor. C'est la partie WebForms vs Razor (et Blazor) qui est beaucoup plus de travail.

Nous venons de publier un aperçu d'un livre électronique pour aider les développeurs à migrer de WebForms vers Blazor:

https://docs.microsoft.com/en-us/dotnet/architecture/blazor-for-web-forms-developers/index

Il est donc possible de conserver une partie de votre application dans VB, puis seule l'interface utilisateur devra être C #.

Il est donc possible de conserver une partie de votre application dans VB, puis seule l'interface utilisateur devra être C #.

Vous pouvez également utiliser un projet VB.NEt pour l'interface utilisateur. Seuls les fichiers cshtml contiendront des blocs C #. Si vous souhaitez éviter le code C #, vous pouvez utiliser des littéraux xml dans VB.NEt pour concevoir l'interface utilisateur comme je l'ai fait dans mon projet Vazor:
https://github.com/VBAndCs/Vazor-DotNetCore2
Anthony Green a poussé cela à un autre niveau comme vous pouvez le voir dans ses derniers sujets de son blog:
https://anthonydgreen.net/
Ou ici:
https://github.com/dotnet/vblang/issues/483
J'ai également suggéré d'utiliser une commande de balise XML pour éviter à la fois C # et VB et avoir un rasoir XML pur (j'ai appelé ZML):
https://github.com/VBAndCs/ZML

Bien que notre projet soit un projet WebForms, nous ne l'utilisons plus comme prévu à l'origine. Il s'agissait d'une ancienne mais grande application d'entreprise qui, au fil des ans, a été convertie pour utiliser uniquement le framework côté client Vue.js appelant WebMethods résidant dans chacun des codes .aspx derrière les pages. Donc, il n'y a pas de composants serveur (pas de runat = "serveur" quoi que ce soit), pas de viewstate, pas de publication pleine page (pas d'élément "form"). Autre que la méthode Load qui initialise dynamiquement certains composants côté client Vue, le code derrière ne contient que des méthodes Web.

Avec cela à l'esprit et l'exigence de passer à .NET Core vers quelle nouvelle technologie ASP.NET dois-je migrer le projet si je veux m'éloigner des WebForms? MVC pour moi n'a aucun sens puisque Vue.js a déjà le modèle MVC du côté client, ce qui est à mon avis plus élégant, alors pourquoi en aurais-je besoin sur le serveur? Blazor n'a aucun sens non plus, car cela impliquerait de réécrire à nouveau toute l'interface utilisateur.

@Gruski Je recommanderais Razor Pages. Il est extrêmement facile de démarrer avec: il suffit de créer un dossier Pages dans votre application ASP.NET Core et de commencer à y ajouter des fichiers .cshtml. Chaque page est essentiellement une URL, et vous pouvez y mettre du HTML arbitraire, puis ajouter le C # de votre choix pour la logique du serveur.

Essayez ce didacticiel pour commencer: https://docs.microsoft.com/en-us/aspnet/core/tutorials/razor-pages/razor-pages-start?view=aspnetcore-3.0&tabs=visual-studio

@Eilon Les pages Razor ont-elles du code derrière pour placer WebMethods? Sinon, où seraient placées les WebMethods? En le regardant, il semble qu'il utilise toujours une version simplifiée du modèle MVC côté serveur dans les coulisses, qui est redondante lors de l'utilisation de Vue. Aussi pas de support VB dans Razor Pages.

Les pages Razor ne prennent pas en charge les méthodes Web. Je recommanderais d'utiliser MVC pour ces méthodes. Vous pouvez mélanger Razor Pages et MVC dans la même application.

@Gruski J'ai voyagé et j'ai juste rattrapé mon retard.

Si vous avez votre interface utilisateur dans Vuew.js, pouvez-vous simplement utiliser ASP.NET Core MVC / WebAPI? Cela fonctionne très bien. Bien que cet article inclue un peu Angular, il montre la technique générale: https://devblogs.microsoft.com/vbteam/combining-angular-visual-basic-and-net-core-for-developing-modern- applications web /

Il existe deux domaines de problèmes avec l'assistance:

  • Razor n'est pas pris en charge pour Visual Basic, bien que, comme indiqué, @VBAndCs et @AnthonyDGreen ont tous deux mis au point une solution potentiellement meilleure pour Visual Basic.
  • Il n'existe aucun modèle pour ASP.NET WebAPI.
Cette page vous a été utile?
0 / 5 - 0 notes