API Inti ASP.NET Minimal
.env Configuration Loader (untuk data sensitif)Pengujian
Todo
Jalankan perintah berikut untuk membuat proyek baru:
git clone https://github.com/odan/aspnet-api.git --depth 1 {my-app-name}
cd {my-app-name}
Ganti {my-app-name} dengan nama yang diinginkan untuk proyek Anda.
Buat database MySQL / MariaDB baru.
CREATE DATABASE ` my_api ` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; Ubah nama database yang sesuai.
Buat file .env di direktori MyApi :
MYSQL_HOST = localhost
MYSQL_PORT = 3306
MYSQL_USER = root
MYSQL_PASSWORD =
MYSQL_DATABASE = my_apiUbah database dan kredensial yang sesuai.
Impor file schema.sql secara manual atau jalankan perintah berikut:
npm run migration:migrate
Catatan: Perintah ini membutuhkan NPM.
Untuk membangun dan menjalankan aplikasi dalam mode debug, jalankan:
dotnet run
atau
dotnet watch run
Menjalankan Build Rilis:
dotnet run --configuration Release
Bangun proyek dan ketergantungannya:
dotnet build
Membangun proyek dan ketergantungannya menggunakan konfigurasi rilis:
dotnet build --configuration Release
Membersihkan Direktori Bin dan OBJ:
dotnet clean
Bersih dan Bangun:
dotnet rebuild
Menerbitkan:
dotnet publish
Gaya Kode
Instal Paket dotnet-format :
dotnet tool install --global dotnet-format
Memeriksa Gaya Kode:
dotnet format --verify-no-changes
Memperbaiki Gaya Kode:
dotnet format -v d
Deklarasikan antarmuka IStringLocalizer<T> di mana Anda perlu menerjemahkan pesan.
Contoh
public class Example
{
private readonly IStringLocalizer < Example > _localizer ;
public Example ( IStringLocalizer < Example > localizer )
{
_localizer = localizer ;
}
// ...
}Bahasa default dan sumber adalah bahasa Inggris.
Menerjemahkan pesan sederhana:
string text = _localizer . GetString ( "Hello, World!" ) ;
// Output: Hallo, Welt!Menerjemahkan pesan dengan placeholder:
string text2 = _localizer . GetString ( "The user {0} logged in" , "sally" ) ;
// Output: Der Benutzer sally hat sich eingeloggtResources proyek.de-DE.po .Translations Menu> SettingsGerman_localizer.GetString sebagai kata kunci sumber.Update from source ke Pur untuk terjemahan baru.de-DE.mo .Anda dapat mengubah bahasa selama permintaan dengan mengatur CurrentCulture sebagai berikut:
using using System . Globalization ;
// ...
var culture = new CultureInfo ( "de-DE" ) ;
Thread . CurrentThread . CurrentCulture = culture ;
Thread . CurrentThread . CurrentUICulture = culture ; LocalizationMiddleware mendeteksi bahasa pengguna menggunakan nilai header Accept-Language permintaan http. Jika header ini berisi kode yang valid, CurrentCulture akan dialihkan secara otomatis.
Buat database tes lokal untuk Xunit.
CREATE DATABASE ` my_api_test ` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; Buat file .env di direktori MyApi.Tests :
MYSQL_HOST = localhost
MYSQL_PORT = 3306
MYSQL_USER = root
MYSQL_PASSWORD =
MYSQL_DATABASE = my_api_testUbah database dan kredensial yang sesuai.
Untuk memulai suite tes, jalankan:
dotnet test
Lisensi MIT (MIT). Silakan lihat file lisensi untuk informasi lebih lanjut.