Exemple de code pour montrer comment le code peut être partagé de frontend au backend avec C # et .NET.
Ce projet comprend:
| Projet | Description |
|---|---|
| Pokemoneverywhere.blazor | Application Web Blazor qui montre les données Pokémon récupérées provenant du projet API Web |
| Pokemoneverywhere.blazor.shared | Bibliothèque de classe Razor (RCL) qui est partagée entre tous les projets compatibles Blazor (Blazor, Blazor Hybrid avec .net Maui, WPF et WinForms) |
| Pokemoneverywhere.blazorhybrid | Blazor Hybrid Project construit sur .net Maui que vous pouvez exécuter sur Android, iOS, Windows et MacOS |
| Pokemoneverywhere.console | Application de console .NET qui montre les données Pokémon provenant du projet API Web dans un tableau |
| Pokemoneverywhere.maui | Application .net Maui "native" qui montre les données Pokémon provenant du projet API Web dans une application Android, iOS, Windows et MacOS native |
| Pokemoneverywhere.shared | Bibliothèque de classe partagée avec tous les autres projets . Comprend les modèles et services Pokémon pour récupérer les données |
| Pokemoneverywhere.vue (pas en solution) | Un projet Web Vue qui est hébergé dans le projet VueHybrid |
| Pokemoneverywhere.vuehybrid | Projet client .net Maui qui utilise un HybridWebView pour charger une application VUE qui montre ensuite les données Pokémon provenant du projet API Web |
| Pokemoneverywhere.webapi | Projet API Web backend qui récupère les données d'une source externe et les sert aux clients |
| Pokemoneverywhere.wpf | Projet client WPF qui montre comment récupérer les données dans un DataGrid WPF et utiliser Blazor Hybrid |
| Pokemoneverywhere.winforms | Projet client WinForms qui montre comment récupérer les données dans un WinForms DataGridView et utiliser Blazor Hybrid |
Assurez-vous que le projet WebAPI est en cours d'exécution pour servir les données.
Vous pouvez le faire en exécutant dotnet run --project PokemonEverywhere.WebApi/PokemonEverywhere.WebApi.csproj --launch-profile "https"
Si la connexion au point de terminaison HTTPS vous donne des erreurs sur le certificat invalide, arrêtez le serveur et exécutez dotnet dev-certs https --trust . Cela pourrait vous inviter à votre mot de passe. Ensuite, exécutez à nouveau la commande au-dessus pour exécuter le serveur.
En éventuellement, vous pouvez configurer un Devtunnel pour vous connecter au serveur à partir d'un émulateur / simulateur.
Pour ce faire, installer Devtunnels et exécuter devtunnel host -a -p 7055 . Le port 7055 est la valeur par défaut de ce projet, si vous choisissez d'utiliser autre chose, mettez à jour le port. Accédez à l'URL générée une fois à partir d'un navigateur pour reconnaître le message d'avertissement, à partir de là, vous pouvez vous connecter à l'URL à partir des projets de l'application client.
Tous les projets doivent pouvoir exécuter n'importe quel éditeur IDE ou Code ou la ligne de commande.
Par exemple pour exécuter le projet client Blazor à partir de l'utilisation de la ligne de commande
dotnet run --project PokemonEverywhere.Blazor/PokemonEverywhere.Blazor.csproj --launch-profile " https "Ou pour exécuter .net Maui sur Windows à partir de l'utilisation de la ligne de commande
dotnet build PokemonEverywhere.Maui/PokemonEverywhere.Maui.csproj -t:Run -f net8.0-windows10.0.19041.0Dans Visual Studio, définissez votre projet préféré en tant que projet de démarrage et commencez à fonctionner!
Avant d' exécuter le projet VueHybrid
npm i
npm run build