کاربرد فایل lunchsetting.json در پروژه های Asp.net core چیست ؟
سلام لطفا بفرمایید کاربرد فایل lunchsetting.json در پروژه های Asp.net core چیست ؟ چه کارهایی رو میشه از طریق این فایل انجام داد ؟
پاسخ هوش مصنوعی
فایل launchSettings.json در پروژه های ASP.NET Core برای پیکربندی تنظیمات هنگام اجرای اپلیکیشن در محیط های مختلف استفاده می شود. این فایل معمولاً در دایرکتوری Properties قرار دارد و شامل تنظیمات مربوط به پروفایل های مختلف برای اجرای برنامه است.
از طریق فایل launchSettings.json می توانید کارهای زیر را انجام دهید:
- پروفایل های اجرای متعدد: می توانید پروفایل های مختلفی برای اجرای اپلیکیشن مشخص کنید، مثلاً برای اجرا در حالت Development یا Production.
- تنظیمات سرویس دهی: آدرس و پورت HTTP یا HTTPS که اپلیکیشن باید روی آن اجرا شود، می تواند در این فایل مشخص شود.
- تنظیم متغیرهای محیطی: می توانید متغیرهای محیطی خاصی را برای هر پروفایل تنظیم کنید تا برای پیکربندی بیشتر اپلیکیشن قابل دسترسی باشند.
- تنظیمات شبیه سازی: امکان شبیه سازی رفتار اپلیکیشن با استفاده از تنظیمات مختلف APIها یا کتابخانه های ذینفع.
به عنوان مثال، محتوای این فایل ممکن است به شکل زیر باشد:
{
"profiles": {
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"MyApp": {
"commandName": "Project",
"launchBrowser": true,
"applicationUrl": "http://localhost:5000",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
}
}
}
به طور کلی، فایل launchSettings.json می تواند به راحتی پروفایل های مختلف را برای تسهیل فرآیند توسعه و تست اپلیکیشن های ASP.NET Core مدیریت کند.
کاربرد فایل lunchsetting.json در Asp.net core
این فایل معمولا در پنجره Solution Explorer و در پوشه Properties قابل مشاهده می باشد.

برخی کاربردهای فایل lunchsettings.json
- این فایل یک فایل مربوط به پیکربندی و تنظیمات پروژه موقع شروع پروژه می باشد.
- یکی از کاربردهای فایل lunchsettings.json این می باشد که نحوه ره اندازی پروژه را مشخص می کند.
- در این فایل می توان برای راه اندازی پروژه حالات مختلفی را ایجاد و پیکربندی کرد. به عنوان مثال می توان برای راه اندازی پروژه روی سرور IIS یا Kestrel و یا اجرا توسط HTTP یا HTTPs تنظیمات مختلف را انجام داد. همچنین می توان مشخص کرد پروژه موقع ران شدن کدام پورت را استفاده کند. مهم ترین مزیت این قابلیت این می باشد که برنامه نویس به راحتی و بدون تغییر کد می تواند بین حالات مختلف و سرورهای مختلف پروژه خود را تست کند.
چه تنظیماتی در فایل lunchsettings.json قابل انجام است
- پیکربندی پروفایل (Profile Configuration) : یکی از تنظیمانی که در این فایل قابل انجام است این است که می توانید چندین پروفایل را برای سناریوهای مختلف تعریف کنید (به عنوان مثال، اجرا با IIS Express، Kestrel، یا استفاده از هر دو IIS و Kestrel).
- متغیرهای محیطی (Environment Variables) : در این فایل می توانید متغیرهای محیطی یا سراسری را مشخص میکند که هنگام اجرای برنامه در دسترس هستند.
- URL های برنامه (Application URLs) : در این فایل می توانید آدرس هایی را تایین کنید که برنامه در طول توسعه به آنها گوش می دهد. مثلا ممکن است در برخی بخش های برنامه نیاز به فراخوانی یک api مشخص باشد. می توانید آدرس این Api را یکبار در این فایل تعریف کنید و بارها از آن استفاده کنید.
- راهاندازی مرورگر (Launch Browser) : این تنظیم تعیین میکند که آیا مرورگر باید بهطور خودکار هنگام شروع برنامه راهاندازی شود یا خیر و کدام URL باید باز شود.
نکته مهم : نکته بسیار مهم در مورد فایل lunchsettings.json این می باشد که این فایل فقط موقع توسعه نرم افزار و در محیط ویژوال استودیو یا VS Code قابل دسترس می باشد و بعد از انتشار پروژه روی هاست در دسترس نمی باشد. بنابراین اگر تنظیماتی دارید که نیاز دارید بعد از استقرار و انتشار نرم افزار روی هاست تغییراتی داشته باشند بهتر است این تنظیمات را در فایل appsetting.json قرار بدهید.
به طور پیش فرض یک پروژه Asp.net Core دارای یک فایل lunchsettings.json به صورت زیر می باشد.
{
"$schema": "http://json.schemastore.org/launchsettings.json",
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:20366",
"sslPort": 44336
}
},
"profiles": {
//تنظیمات این بخش توسط سرور Kestrel استفاده می شود
"http": {
"commandName": "Project",
"dotnetRunMessages": true,
"launchBrowser": true,
"applicationUrl": "http://localhost:5265",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"https": {
"commandName": "Project",
"dotnetRunMessages": true,
"launchBrowser": true,
"applicationUrl": "https://localhost:7006;http://localhost:5265",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
//تنظیمات این بخش توسط سرور IIS استفاده می شود
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
}
}
}
برای کسب اطلاعات بیشتر و اینکه دقیقا بدونید هر کدام این این بلوک ها چه کاربردی دارند می تونید لینک زیر رو هم مطالعه کنید.
- آموزش استفاده از پلاگین گردونه شانس در Asp.net core به همراه سورس
- نمایش متن به صورت فرمت شده در CkEditor
- آموزش استفاده از SignalR در Asp.net Core با مثال عملی
- ادغام چند گزارش استیمول سافت بصورت پی دی اف در یک فایل
- نحوه تغییر استایل کامپوننت select2 چگونه است ؟
- چگونه امنیت پروژه را در Asp.net Core افزایش دهیم ؟
- ارسال پارامتر در دستور window.open جی کویری
- ارسال پارامتر از طریق جاوااسکریپت با کلیک روی تگ a
- خطای 500 زمان اجرا شدن پروژه روی هاست
- کویری نویسی در استیمول سافت جهت فیلتر اطلاعات
- کار با CkEditor با قابلیت آپلود عکس
- خطا در ایجاد migration در Asp.net core
- تفاوت های Asp.net core و Asp.net mvc چیه؟
- دلیل اسپم شدن ایمیل های ارسالی از سرور
- نحوه لایه بندی پروژه Core و اضافه کردن به IIS
- ارسال ایمیل در Asp.net core
- آیا میشه در mvc core از کامپونت استفاده کرد
- آپلود فایل در Asp.net core چگونه است؟
- حذف کامل یک رکورد در جدول ریلیشن شده
- اشکال در آپلود فایل ویدیو در mvc core 2