چند تا راه برای این مسئله وجود داره:
  1. از طریق یک Middleware بدنه Request رو بخوانید، و کاراکترهای ی و ک عربی رو با فارسی جایگزین کنید (این روش آسان نیست، خودم تا این لحظه که این پاسخ رو می نویسم دارم رویش کار می کنم، اما هنوز به نتیجه نرسیدم).
  2. یک Model Binder برای نوع داده String بنویسید، و در اون Model Binder کاراکترهای مورد نظر را با معادل هاش جایگزین کنید (پروسه اش کمی سخته، ولی انجامش دادم، اگر میخواهی بگو کدش رو بگذارم).
  3. از طریق مکانیسمی مثل نوشتن فیلتر برای EF Core کار مورد نظر رو انجام دهید (هنوز این روش رو بررسی نکردم که شدنی هست یا نه، نمونه کدش برای EF 6 دیدم).


اگر روش 2 به کارت میاد اعلام کن. مزیت روش 2 این است که روی داده های دریافتی از تمام منابع، از جمله Form و Query String و Route Parameter تاثیر میگذاره، اما روی داده های خوانده شده از دیتابیس، یا مثلا یک فایل Text و ... تاثیری نداره.