یک راه حل خوب برای trigger و stored procedure نویسی دیتابیس در EF Core از طریق migration

یک راه حل خوب برای trigger و stored procedure نویسی دیتابیس در EF Core از طریق migration

یه مشکلی که تو چندتا از شرکت هایی که بودم دیدم، یه دیتابیس local توی شبکه شرکت داشتن و روی اون کارای دولوپ رو انجام می دادن.تریگر و استور پروسیجر ها روی دیتابیس local شرکت نوشته می شدن و بعدا موقع پابلیش پروژه از طریق روش هایی روی دیتابیس اصلی هم ایجاد می شدن، این روش یکم وقت گیر بود و بعضا دچار مشکلاتی می شدیم.ما اینجا میخاییم برسی کنیم که چطوری میتونیم از طریق migration ها در ef core تریگر و استور پروسیجر روی دیتابیس اضافه کنیم.من یه پروژه کنسولی دات نت کور ایجاد کردم که ef core 5 روش نصب هست.حالا میام یه فایل text به پروژه ام اضافه میکنم و کد های sql رو توش می نویسممن یه sp نوشتم یه یه guid تولید میکنه.حالا روی پروژه راست کلیک کنید و add رو بزنید و newItem رو انتخاب کنید و یه resource file به پروژه اضافه کنید.حالا فایل رو انتخاب کنید تا بتونید به resource file تون فایل حاوی دستورات sql رو ادد کنید.روی گزینه add resource کلیک کنید و فایل تون رو اضافه کنید.حالا یه migration ایجاد کنید.توی فایل migration تون کد های زیر رو بنویسید protected override void Up(MigrationBuilder migrationBuilder) { migrationBuilder.Sql(Resource.Sp); } protected override void Down(MigrationBuilder migrationBuilder) { migrationBuilder.Sql(&quotdrop procedure getguid&quot);
} فقط حواستون باشه که جای sp اسم فایل تون و جای GetGuid باید اسم پروسیجر تون رو بنویسید :)حالا دستور update-database رو می زنیم.حالا می بینیم که پروسیجر مون به راحتی به دیتابیس اضافه شده :)موفق و پیروز باشید.

Author: admin

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *