- «
Identity.Dapper »
- «
AspNetCore.Identity.MongoDB »
- این مورد بیشتر به طراحی کل سیستم بر میگردد؛ چون اجزای مختلف یک سیستم قرار است هماهنگ با اطلاعات کاربران و سطوح دسترسی آنها کار کنند. بنابراین بهتر است زیرساخت سیستم یکپارچه باشد (اگر NoSQL انتخاب شد، کل سیستم NoSQL طراحی شود) تا مشکلات نگهداری، توسعه و همچنین کاهش کارآیی آن با سوئیچ بین بانکهای اطلاعاتی مختلف وجود نداشته باشد.
به علاوه با تعویض این موارد در آینده همیشه یک قدم عقبتر از تیم ASP.NET Core Identity خواهید بود. همچنین بهینه سازیهایی که در اینجا صورت گرفته و طراحی آن، عمیقا با دید به EF Core انجام شدهاست (و اساس طراحی آن هم «رابطهای» است). EF Core وابستگی به SQL Server ندارد و
تعداد پروایدرهای رسمی بانکهای اطلاعاتی مختلف آن قابل توجه است (SQL Server, SQLite, PostgreSQL, MySQL, SQL CE, InMemory) و سیستمی که با یک ORM کار میکند، همواره این مزیت قابل تعویض بودن بانک اطلاعاتی برنامه را خواهد داشت.
استفادهی از Dapper و SQL نویسی مستقیم، تنها با یک اشتباه کوچک و فراموشی نکتهای، به حملات تزریق اسکیوال ختم خواهد شد و این مورد مسالهای است که
حداقل با EF Core وجود ندارد و فوق العاده مهم است.