0
ارور در کد log4net
سلام
من کد زیر را نوشته ام
using System;
using System.Text;
using System.Web.Mvc;
namespace WebApplication15
{
public class UserTrackerLogAttribute : ActionFilterAttribute, IActionFilter
{
public override void OnActionExecuted(ActionExecutedContext filterContext)
{
var actionDescriptor = filterContext.ActionDescriptor;
string controllerName = actionDescriptor.ControllerDescriptor.ControllerName;
string actionName = actionDescriptor.ActionName;
string userName = filterContext.HttpContext.User.Identity.Name.ToString();
DateTime timeStamp = filterContext.HttpContext.Timestamp;
string routeId = string.Empty;
if (filterContext.RouteData.Values["id"] != null)
{
routeId = filterContext.RouteData.Values["id"].ToString();
}
StringBuilder message = new StringBuilder();
message.Append("UserName=");
message.Append(userName + "|");
message.Append("Controller=");
message.Append(controllerName + "|");
message.Append("Action=");
message.Append(actionName + "|");
message.Append("TimeStamp=");
message.Append(timeStamp.ToString() + "|");
if (!string.IsNullOrEmpty(routeId))
{
message.Append("RouteId=");
message.Append(routeId);
}
var log = ServiceLocator.Current.GetInstance<ILoggingService>();
log.Log(message.ToString());
base.OnActionExecuted(filterContext);
}
}
}
که در کد زیر
var log = ServiceLocator.Current.GetInstance<ILoggingService>();
ServiceLocator رانمشناسد
و ارور زیر را صادر میکند
The name 'ServiceLocator' does not exist in the current context WebApplication15
برای رفع خطا باید چکارکنم
3 پاسخ
0
برای DI از چه Container ای استفاده می کنید؟
0
سلام، وقت بخیر
پکیج log4net رو با nuget نصب کردید یا دستی reference دادید؟
0
سلام
با nuget