Коллеги всем доброго времени суток. Подскажите, кто нибудь работал с событийным слоем Entity.
Написал класс обработчик в качестве примера для обучения скомпилировал приложение упал сайт.
Вот пример класса обработчика:
using System;
using System.Web;
using Terrasoft.Core;
using Terrasoft.Core.Entities;
using Terrasoft.Core.Entities.Events;
namespace Terrasoft.Configuration
{
[EntityEventListener(SchemaName = "Order")]
public class OrderEntityEventListener : BaseEntityEventListener
{
private UserConnection _userConnection;
private LogService _logService;
public UserConnection UserConnection
{
get
{
if (_userConnection != null)
{
return _userConnection;
}
_userConnection = HttpContext.Current.Session["UserConnection"] as UserConnection;
if (_userConnection != null)
{
return _userConnection;
}
return _userConnection;
}
set { _userConnection = value; }
}
public LogService LogService { get => _logService; set => _logService = value; }
public OrderEntityEventListener()
{
LogService = new LogService(UserConnection);
}
public override void OnInserting(object sender, EntityBeforeEventArgs e)
{
try
{
base.OnInserting(sender, e);
var systemUserName = UserConnection.CurrentUser.ContactName;
var systemUserId = UserConnection.CurrentUser.ContactId;
LogService.RecInfo($"LOG:[OnInserting]:systemUserId: {systemUserId}; systemUserName:{systemUserName}");
}
catch (Exception exception)
{
LogService.RecInfo($"LOG:[OnInserting]:Exception: {exception.Message}; {exception.InnerException}");
}
}
}
}
Подскажите, что тут не так? Если кто работал, скинте пожалуйста примеры.
Заранее благодарен