NLog AspNetSession布局渲染器-从会话中的强类型对象获取价值

时间:2019-05-23 19:23:24

标签: c# .net-core nlog

我们正在使用.NET Core,并且扩展了ISession以允许我们将强类型对象存储为Session中的单个项目。这样做的代码很简单(只是您有个主意):

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

现在,我很想使用NLog的AspNetSession布局渲染器来尝试获取会话中强类型对象的属性之一的值。

在NLog配置文件中,我尝试访问如下属性:

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

其中“ UserSessionValidationInfo”是我们卡在Session中的对象的键名,而MstrUserID是属性名。

一无所获。

我认为这是不可能的,但是基于此处提供的示例,我充满希望:https://github.com/NLog/NLog/wiki/AspNetSession-layout-renderer

无论如何,有人对如何执行此操作有任何想法吗?我需要编写自定义布局渲染器吗?

0 个答案:

没有答案