کی این نامه رو عوض کرد؟ | Audit Log خودکار با EF Core Interceptor
CSharpFox
0:00 / 0:00
کی این نامه رو عوض کرد؟ | Audit Log خودکار با EF Core Interceptor
3 просмотра · 1 дн. назад
CSharpFox
10 подписчиков
3 просмотра · 1 дн. назад
توی نرمافزار سازمانی همیشه یه روز یکی میپرسه: «این نامه رو کی عوض کرد؟ قبلاً چی بود؟ کی پاکش کرد؟»
اگه جوابش رو توی تکتک سرویسها نوشته باشید، دیر یا زود یه جا یادتون میره. توی این ویدیو این کار رو یه بار و یه جا، با یه EF Core Interceptor، برای کل سیستم انجام میدیم.
قسمت دوم سری «ASP.NET Core برای نرمافزارهای سازمانی». توی این سری قدمبهقدم LetterHub رو میسازیم، یه سامانهی ثبت و پیگیری نامه روی .NET 10.
توی این ویدیو یاد میگیرید:
✅ پر کردن خودکار CreatedBy / ModifiedBy با SaveChangesInterceptor
✅ یه ICurrentUser ساده، و اینکه توی پروژهی واقعی کاربر از کجا میاد
✅ جدول AuditLog با مقادیر قبلی و جدید بهصورت JSON، فقط برای فیلدهایی که واقعاً عوض شدن
✅ گرفتن شناسهی واقعی رکوردهای جدید که دیتابیس موقع ذخیره میسازه
✅ ذخیرهی تغییر و لاگش توی یه تراکنش، تا هیچ تغییری بدون لاگ ثبت نشه
✅ ثبت Interceptor از DI با AddInterceptors و انتخاب lifetime درست
✅ attribute [NotAudited] برای فیلدهای حساس
✅ چرا ExecuteUpdate و ExecuteDelete از Interceptor رد میشن
✅ endpoint تاریخچهی تغییرات، که حتی بعد از حذف نامه هم کار میکنه
📺 قسمت قبل (مدیریت خطای حرفهای با ProblemDetails):
• وقتی API خطاها رو لو میده | مدیریت خطای ح...
📺 قسمتهای بعدی سری رو از دست ندید. سابسکرایب کنید و زنگوله رو بزنید.
⏱ فصلبندی:
00:00 معرفی
00:13 ساخت پروژه
00:46 نصب EF Core و SQLite
01:09 نامهها و endpointها
04:17 کاربر جاری
05:23 پر شدن خودکار CreatedBy
07:44 جدول AuditLog
09:39 فیلدهای حساس
10:51 تاریخچهی تغییرات نامه
12:42 جمعبندی