در پروژههای 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"
},