NLog AspNetSession Layout Renderer - получение значения из строго типизированного объекта в сеансе - PullRequest
0 голосов
/ 23 мая 2019

Мы используем .NET Core и расширили ISession, чтобы мы могли хранить строго типизированные объекты как один элемент в Session.Код для этого прост (просто чтобы у вас была идея):

public static void SetObject<T>(this ISession session, string key, T value)
{
 session.SetString(key, JsonConvert.SerializeObject(value));
}

Теперь я хотел бы использовать средство рендеринга AspNetSession NLog, чтобы попытаться получить значение одного из свойств сильнотипизированный объект, который находится в сеансе.

В файле конфигурации NLog я попытался получить доступ к свойству, подобному этому:

${aspnet-session:Variable=UserSessionValidationInfo.MstrUserID:EvaluateAsNestedProperties=true}

Где "UserSessionValidationInfo" - это имя ключа для объектамы застряли в Session, а MstrUserID - это имя свойства.

Ничего не возвращается.

Полагаю, это невозможно, но я надеялся, основываясь на приведенном здесь примере: https://github.com/NLog/NLog/wiki/AspNetSession-layout-renderer

В любом случае,у кого-нибудь есть идеи как это сделать?Нужно ли мне писать собственный рендерер макетов?

...