
پیکربندی Elmah برای استفاده با ASP.NET Core
ابتدا با ایجاد یک پروژه جدید در ویژوال استودیو شروع می کنیم:
به File -> New Project… (Ctrl-Shift-N) بروید.
Visual C# -> Web -> ASP.NET Core Web Application را انتخاب کنید.
.NET Core را در منوی کشویی سمت چپ و ASP.NET Core 2.1 را در منوی کشویی سمت راست انتخاب کنید. شما همچنین می توانید فقط از قالب پروژه خالی استفاده کنید.
روی OK کلیک کنید.
حالا از منوی اصلی بالا، Tools -> NuGet Package Manager -> Manage NuGet Packages for Solution را انتخاب کنید…
در پنجره NuGet – Solution بر روی Browse کلیک کنید و ElmahCore را تایپ کنید.
ElmahCore را هایلایت کنید، کادر کنار پروژه خود را علامت بزنید و روی دکمه Install کلیک کنید. هر گونه قرارداد مجوز را بپذیرید و نصب را کامل کنید.
اکنون روی فایل Startup.cs در پنجره Solution Explorer دوبار کلیک کنید تا باز شود.
using ElmahCore; در بالاس فایل اضافه کنید
در متد ConfigureServices، کد زیر را اضافه کنید و به جای connection_string با رشته اتصال پایگاه داده Winhost واقعی خود، کد زیر را اضافه کنید. مطمئن شوید که پایگاه داده را ایجاد کرده اید و جداول Elmah را همانطور که در دستورالعمل های وبلاگ قبلی من ذکر شده است نصب کرده اید.
services.AddElmah<SqlErrorLog>(options =>
{
options.ConnectionString = @"connection_string";
});
در متد Configure کد زیر را اضافه کنید:
app.UseElmah();
خودشه. اگر می خواهید بدانید که آیا کار می کند یا خیر، می توانید یک استثنای نمونه مانند زیر ایجاد کنید:
app.Run(async (context) =>
{
await context.Response.WriteAsync("Hello World!");
int[] numbers = new int[5];
await context.Response.WriteAsync(numbers[6].ToString());
});
این یک "ndex was outside the bounds of the array." ایجاد می کند. استثنا که به پایگاه داده وارد می شود. برای مشاهده نتایج می توانید جدول dbo.ELMAH_Error را پرس و جو کنید.
همچنین میتونید به انتهای ادرس سایت /elmah رو وارد کنید تا بصورت گرافیکال خطاها رو مشاهده کنید