# Migrations — .NET Core: वेब API बनाएँ, टेस्ट करें और शिप करें

Source: https://www.geekswithgeeks.com/hi/dotnet-core/ef-migrations

> dotnet ef tool से schema बदलाव सुरक्षित रूप से बनाएँ और लागू करें।

## Schema कोड की तरह

Migration एक C# फ़ाइल है जो schema बदलाव बताती है। इसे मॉडल से बनाते हैं, review करते हैं, commit करते हैं और हर database पर लागू करते हैं। इससे schema सभी मशीनों पर दोहराने योग्य रहता है।

## जोड़ें और लागू करें

Tool एक बार install करें, migration जोड़ें, फिर database update करें। लागू करने से पहले बनी फ़ाइल review करें।

```bash
dotnet tool install --global dotnet-ef
dotnet ef migrations add InitialCreate
dotnet ef database update
```

## Production में सावधानी

अगर कई instances साथ शुरू होते हैं तो ऐप startup पर `Database.Migrate()` न बुलाएँ। `dotnet ef migrations script` से SQL script बनाएँ और उसे नियंत्रित deployment step के रूप में चलाएँ।

**Quiz:** लंबित migrations को database पर कौन-सा command लागू करता है?

- [x] dotnet ef database update
- [ ] dotnet ef migrations add
- [ ] dotnet ef dbcontext scaffold
- [ ] dotnet build

*Answer:* dotnet ef database update. `database update` वे migrations चलाता है जो अब तक लागू नहीं हुए। `migrations add` सिर्फ़ फ़ाइल बनाता है।
