Как записать данные в журнал DNN администратора или журнал событий сервера - PullRequest
0 голосов
/ 29 мая 2018

Я просто хочу отладить контроллер, но я не могу посмотреть переменные, которые я получаю от функций 2sxc.

Я пытался записывать данные с помощью записи в Log4Net:

private static readonly ILog Logger = LoggerSource.Instance.GetLogger(typeof(MyClassName));

, ноТип ILog не известен в контроллере 2sxc.Я пропустил ссылку?

Я также нашел этот фрагмент:

using DotNetNuke.Services.Log.EventLog;

var objEventLog = new EventLogController();
objEventLog.AddLog("Sample Message", "Something Interesting Happened!", PortalSettings, UserId, EventLogController.EventLogType.ADMIN_ALERT)

Но я не знаю, что отправить в "PortalSettings", и я не имею никакой подсказки в помощникахинтерфейса программирования 2sxc.

Как вы отлаживаете контроллеры 2sxc и регистрируете события (не только для отладки)?

Спасибо за вашу помощь!

Кредит этих фрагментов: Скотт МакКаллох (https://www.smcculloch.com/code/logging-to-the-dnn-event-log)

Ответы [ 2 ]

0 голосов
/ 29 мая 2018

Предыдущее сообщение Джо Крейга мне очень помогло.

Итак, в 2sxc приложении я теперь могу войти в журнал событий DNN (не в Windows):

@using DotNetNuke.Services.Log.EventLog;
@using DotNetNuke.Entities.Portals;

@{
 var aujourdhui = DateTime.Now;

 var objEventLog = new EventLogController();
    PortalSettings PortalSettings = new PortalSettings();

 objEventLog.AddLog("Debug info", "Variable \"Aujourdhui\" contains: " + aujourdhui.ToString("dddd d MMMM yyyy"), PortalSettings, @Dnn.User.UserID, EventLogController.EventLogType.ADMIN_ALERT);

    }

Единственная небольшая проблема заключается в том, что этот PortalSettings возвращает первый портал, даже если мое приложение 2sxc работает на втором портале (id = 1).Я должен что-то упустить.Но сейчас и то, что мне нужно (отладка), это нормально для меня!

0 голосов
/ 29 мая 2018

Это дает часть ответа: http://www.dnnsoftware.com/community-blog/cid/141723/using-log4net-with-dotnetnuke. И, похоже, пространство имен - DotNetNuke.Instrumentation.

Что касается PortalSettings, то это настройки портала для вашего портала.Я думаю, что вам нужно сослаться на DotNetNuke.Entities.Portals, а затем использовать PortalController для получения объекта настроек портала.

...