مرکز آموزش

رفع خطای Could not parse the JSON file 'M' is an invalid escapable character within a JSON string. The string should be correctly escaped

  • 139

در پروژه‌های ASP.NetCore گاهی اتفاق می‌افتد که وبسایت شما با خطای زیر مواجه می‌شود:

Unhandled exception. System.FormatException: Could not parse the JSON file.
System.Text.Json.JsonReaderException: 'M' is an invalid escapable character within a JSON string. The string should be correctly escaped. LineNumber: 2 | BytePositionInLine: 40.

 

دلیل خطا

این خطا نشان می‌دهد که فایل appsettings.json که تنظیمات دیتابیس در آن انجام می شود دارای نقص ساختاری یا خطای Syntax است. این خطا می تواند در اثر اشتباه در کاراکترها و نشانه‌های درج شده در این فایل، رخ داده باشد.

 

نحوه رفع خطا

فایل appsettings.json  را جهت ویرایش باز کنید.

در بخش اول دیتابیس آدرس MSSQL درج شده است، اطمینان حاصل کنید که آن را با دو کاراکتر "\" وارد کرده اید.

مثال:

.\\SQLEXPRESS

چنانچه آدرس را با یک کاراکتر "\" وارد کرده اید به 2 عدد تبدیل کنید تا مشکل رفع شود. در واقع نمونه کدهای صحیح در این فایل به شکل زیر است. هر جا که در مقایسه فایل خود با موارد زیر تفاوت دیدید اقدام به تصحیح کنید:

  "ConnectionStrings": {

"DefaultConnection": "Data Source=.\\SQLEXPRESS;Initial Catalog=DBNAME;Persist Security Info=True;User ID=DBUSER;Password=DBPASSWORD"

},
درج صحیح و درست کاراکترها در این خطا بسیار اهمیت دارد. بنابراین دقت کنید که فایل خود را عینا مطابق با نمونه بالا با جایگزین کردن نام سرور دیتابیس به جای sqlexpress تصحیح می کنید.
ضمن اینکه توصیه می شود پس از تصحیح مورد فوق، به بخش Hosting & DNS > Dedicated IIS Application Pool مراجعه و آن را Stop/Start کنید و مقدار stdlogout را در فایل web.config از true به false تغییر دهید.

تمامی حقوق مادی و معنوی این مطلب متعلق به HiSupport است.
کپی برداری از مطالب تنها با ذکر منبع و لینک به وبسایت HiSupport بلامانع است.


آیا این آموزش به شما کمک کرد؟