Maui-Gen est un générateur de code basé sur un modèle pour la construction de l'échafaudage nécessaire pour une application .NET MAUI basée sur les données. En utilisant un schéma de données pour décrire les champs de données requis, Maui-Gen génère ensuite les modèles, les vues, la visualisation du modèle et la liste, la modification, les pages détaillées, remplies avec des éléments de formulaire nécessaire pour modifier et lire les données du modèle, ainsi que le service SQllite CUD pour le stockage et la récupération des données. Maui-Gen crée également des fichiers de support et injecte des données de singleton et d'itinérance si nécessaire.
Après avoir déplacé une de mon application Xamarin à Maui, je me suis retrouvé à regarder de zéro et cela signifiait que les modèles de modèles de recréation de modèles vues pages ect. J'ai trouvé que cela prenait du temps, j'ai un peu accéléré le processus en créant des modèles, mais cela n'a fonctionné que comme point de regard et j'ai encore dû modifier pour répondre à l'exigence.
J'ai donc décidé d'écrire un outil MUUI-GEN pour aider à gagner du temps à l'écriture du code sous-jacent nécessaire pour les formulaires de saisie de données MAUI. J'ai trouvé que c'est un outil vraiment utile, j'ai donc décidé de le mettre pour les autres.
Ce n'est pas joli ou bien poli mais plus une preuve de concept. S'il y a l'intérêt, alors envisagez d'investir le temps.
Vous pouvez appliquer des modifications directement à un projet .net Maui, mais à ce stade, je serais fortement conseillé de le faire uniquement sur un projet nouvellement créé, afin qu'il ne casse pas votre travail acharné ou ne s'assure pas que votre projet soit en place, il peut donc le restaurer.
Utilisez à vos propres risques sur le projet existant.
Une option plus sûre consiste à générer le code dans un nouveau dossier, puis à copier les fichiers.
Vous devrez installer Go 1.20 https://go.dev/doc/install
Vous trouverez ci-dessous les outils dont vous aurez besoin pour créer et créer une application .net Maui. L' accélérateur de Maui App Installera les composants requis tels que la trousse d'outils communautaires Maui , Sqllite dont Maui-Gen a besoin.
Vous trouverez ci-dessous les étapes nécessaires pour installer et configurer Maui-Gen prêt à l'emploi.
go install github.com/Mrpye/maui-gen maui-gen init all Vous trouverez ci-dessous, vous pensez que les étapes doivent être effectuées afin que le code géré par Maui-Gen s'exécute.
Vous devrez d'abord créer un nouveau projet dans Visual Studio à l'aide de l' accélérateur de Maui App Accelerator Ceci installera les composants requis et configurera votre projet prêt pour Maui-Gen .









//<%REGISTER_ROUTE%>
public partial class AppShell : Shell
{
public AppShell ( )
{
InitializeComponent ( ) ;
//<%REGISTER_ROUTE%>
}
} //<%REGISTER_SINGLETON%
public static class MauiProgram {
public static MauiApp CreateMauiApp ( ) {
var builder = MauiApp . CreateBuilder ( ) ;
builder
. UseMauiApp < App ( )
. UseMauiCommunityToolkit ( )
. ConfigureFonts ( fonts = {
fonts . AddFont ( "OpenSans-Regular.ttf" , "OpenSansRegular" ) ;
fonts . AddFont ( "OpenSans-Semibold.ttf" , "OpenSansSemibold" ) ;
} ) ;
builder . Services . AddSingleton < MainViewModel ( ) ;
//<%REGISTER_SINGLETON%
builder . Services . AddSingleton < MainPage ( ) ;
return builder . Build ( ) ;
}
}Note! Assurez-vous que c'est le répertoire où se trouve tout le code ci-dessous.

Exécutez la commande suivante pour définir le répertoire de sortie. C'est là que Maui-Gen sortira le code.
Ajustez le chemin pour pointer vers votre projet.
maui-gen set output " C:projectsNetDemoMauiAppDemoMauiApp "maui-gen set schema " C:Users[user].maui-genexamplesperson_and_pet.yaml "maui-gen set editmaui-gen nuget install --output [project_path]maui-gen nuget installSQLitePCLRaw.core
SQLitePCLRaw.bundle_green
SQLitePCLRaw.provider.sqlite3
SQLitePCLRaw.provider.dynamic_cdecl
SQLiteNetExtensions
SQLiteNetExtensions.Async
cd C: p rojects N et M auiGenDemoApp M auiGenDemoApp
dotnet add C: p rojects N et M auiGenDemoApp M auiGenDemoApp package SQLitePCLRaw.core
dotnet add package SQLitePCLRaw.bundle_green
dotnet add package SQLitePCLRaw.provider.sqlite3
dotnet add package SQLitePCLRaw.provider.dynamic_cdecl
dotnet add package SQLiteNetExtensions
dotnet add package SQLiteNetExtensions.AsyncVous pouvez également modifier l'espace de nom dans le fichier de schéma de données
name_space : " DemoMauiApp "
resources :
- App
- Enums
- AppShell
- MauiProgram maui-gen build --namespace " [solution name] "
Vous pouvez maintenant exécuter le projet simple et vous devriez voir.



Documents Maui-Gen CLI
# Run maui-get to build template documents
maui-gen gen_docsVous pouvez trouver les documents générés ici.
# Run maui-get to build template documents
maui-gen gen_template_docsVous pouvez trouver les documents de modèle générés ici.



Ce n'est qu'une preuve de concept pour voir si elle attire l'attention si c'est le cas, je vais y consacrer du temps.
Si vous l'utilisez, je serais intéressé à entendre ce que vous en pensez.
Maui-Gen est autorisé par Apache 2.0.