Une API Core ASP.NET minimale
.env 12 facteurs (pour les données sensibles)Essai
Faire
Exécutez la commande suivante pour créer un nouveau projet:
git clone https://github.com/odan/aspnet-api.git --depth 1 {my-app-name}
cd {my-app-name}
Remplacez {my-app-name} par le nom souhaité pour votre projet.
Créez une nouvelle base de données MySQL / MARIADB.
CREATE DATABASE ` my_api ` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; Modifiez le nom de la base de données en conséquence.
Créez un fichier .env dans le répertoire MyApi :
MYSQL_HOST = localhost
MYSQL_PORT = 3306
MYSQL_USER = root
MYSQL_PASSWORD =
MYSQL_DATABASE = my_apiModifiez la base de données et les informations d'identification en conséquence.
Importez manuellement le fichier schema.sql ou exécutez la commande suivante:
npm run migration:migrate
Remarque: cette commande nécessite NPM.
Pour créer et exécuter l'application en mode débogage, exécutez:
dotnet run
ou
dotnet watch run
Exécution d'une version de version:
dotnet run --configuration Release
Construisez un projet et ses dépendances:
dotnet build
Construire un projet et ses dépendances en utilisant la configuration de la version:
dotnet build --configuration Release
Nettoyage des répertoires Bin et OBJ:
dotnet clean
Nettoyer et construire:
dotnet rebuild
Publier:
dotnet publish
Styles de code
Installez le package dotnet-format :
dotnet tool install --global dotnet-format
Vérification des styles de code:
dotnet format --verify-no-changes
Fixation des styles de code:
dotnet format -v d
Déclarez l'interface IStringLocalizer<T> où vous devez traduire les messages.
Exemple
public class Example
{
private readonly IStringLocalizer < Example > _localizer ;
public Example ( IStringLocalizer < Example > localizer )
{
_localizer = localizer ;
}
// ...
}La langue par défaut et la langue source est l'anglais.
Traduction d'un message simple:
string text = _localizer . GetString ( "Hello, World!" ) ;
// Output: Hallo, Welt!Traduction d'un message avec des espaces réservés: s):
string text2 = _localizer . GetString ( "The user {0} logged in" , "sally" ) ;
// Output: Der Benutzer sally hat sich eingeloggtResources du projet.de-DE.po .Translations du menu> SettingsGerman_localizer.GetString en tant que mot-clé Sources.Update from source à l'analyse pour les nouvelles traductions.de-DE.mo .Vous pouvez modifier la langue pendant la demande en définissant CurrentCulture comme suit:
using using System . Globalization ;
// ...
var culture = new CultureInfo ( "de-DE" ) ;
Thread . CurrentThread . CurrentCulture = culture ;
Thread . CurrentThread . CurrentUICulture = culture ; Le LocalizationMiddleware détecte le langage utilisateur à l'aide de la valeur d'en-tête Accept-Language de demande HTTP. Si cet en-tête contient un code valide, la CurrentCulture sera commutée automatiquement.
Créez une base de données de test locale pour Xunit.
CREATE DATABASE ` my_api_test ` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; Créez un fichier .env dans le répertoire MyApi.Tests :
MYSQL_HOST = localhost
MYSQL_PORT = 3306
MYSQL_USER = root
MYSQL_PASSWORD =
MYSQL_DATABASE = my_api_testModifiez la base de données et les informations d'identification en conséquence.
Pour démarrer la suite de tests, exécutez:
dotnet test
La licence MIT (MIT). Veuillez consulter le fichier de licence pour plus d'informations.