نظرات مطالب
تبدیل pdf به تصویر توسط GhostScript
ممنون. تست نکردم ولی به نظر نسخه 64 بیتی مخصوص هم داره. اینجا
@Payamin
من چون خودم این kbdfa مخصوص ویندوز 7 64 بیتی رو درست کردم (+)، به همین جهت .... یک نوع علاقه است :)
من چون خودم این kbdfa مخصوص ویندوز 7 64 بیتی رو درست کردم (+)، به همین جهت .... یک نوع علاقه است :)
نظرات مطالب
خواندنیهای 23 فروردین
زمانیکه مطلبی به همراه ":)" ارائه میشود، یعنی مزاح.
به دنیای مجازی و ادبیات مخصوص آن خوش آمدید ...
به دنیای مجازی و ادبیات مخصوص آن خوش آمدید ...
- نظرات و مطالب « بررسی فریم ورک Logging» و « فعال سازی صفحات مخصوص توسعه دهندهها » را مطالعه کنید.
- اگر برنامه را از طریق dotnet run و یا dotnet watch run اجرا میکنید، در صفحهی کنسول ظاهر شده، خطاها هم لاگ میشوند. یا اگر با ویژوال استودیو آنرا اجرا میکنید، در برگهی دیباگ آن این خطاها هم لاگ میشوند.
- اگر از پروژهی DNT Identity استفاده میکنید، به همراه یک ef db logger هست که اطلاعات خطاهای رخداده را در بانک اطلاعاتی ذخیره میکند و در قسمت لاگهای سیستم قابل گزارشگیری هست (منوی مدیریتی/گزارش رخدادهای سیستم).
+ مطلب «کار با ASP.NET Web API» را هم در مورد ویژگیهای FromBody و امثال آن مطالعه کنید.
پوشهی wwwroot در پروژههای ASP.NET Core، یک پوشهی مخصوص است و جهت ارائهی تمام فایلهای عمومی برنامه مورد استفاده قرار میگیرد (مانند تصاویر، فایلهای JS ،CSS و امثال آن) و جزئی از publish هم هست و نیازی به تنظیمات ویژهای برای ارائهی نهایی ندارد؛ اطلاعات بیشتر
بنابراین زمانیکه خروجی اکشن متد ذخیره سازی فایلها در سمت سرور چنین چیزی است:
return $"/{uploadsFolder}/{file.Name}"
<img src="https://localhost:5001/uploads/name.png" />
نکتهای در مورد کش کردن فایلهای استاتیک در ASP.NET Core
تمام مطالب فوق در مورد کش کردن خروجی اطلاعات پویا هستند. در مورد فایلهای ایستا میتوان از میان افزار static files به نحو ذیل استفاده کرد:
در اینجا نحوهی افزودن هدرهای مخصوص caching را به فایلهای استاتیک ارائهی شدهی توسط برنامه به کمک StaticFileResponseContext مشاهده میکنید.
تمام مطالب فوق در مورد کش کردن خروجی اطلاعات پویا هستند. در مورد فایلهای ایستا میتوان از میان افزار static files به نحو ذیل استفاده کرد:
app.UseStaticFiles(new StaticFileOptions() { OnPrepareResponse = context => { context.Context.Response.Headers["Cache-Control"] = "private, max-age=43200"; context.Context.Response.Headers["Expires"] = DateTime.UtcNow.AddHours(12).ToString("R"); } });