Я пытаюсь предоставить средство для регистрации ошибок, возникающих в нашем клиенте Flex, предоставляя веб-службу SOAP, которая в качестве одного параметра принимает объект LogMessage.
public class LogMessage
{
public string Message { get; set; }
public string Exception { get; set; }
public string Version { get; set; }
public string User { get; set; }
}
Этот объект заполняется клиентом Flex в случае возникновения ошибки на стороне клиента, и вызывается метод LogClientError, который регистрирует ошибку через log4net.
[WebMethod()]
public void LogClientError(LogMessage message)
{
rollingLogger.Error(message);
}
В настоящее время это печатает полное имя класса LogMessage, поэтому мое текущее предположение заключается в том, что log4net просто вызывает .ToString () для объекта, который передается.
Однако, что я действительно хочу сделать, это сопоставить каждое свойство в классе LogMessage с шаблоном, чтобы log4net правильно выписывал нужную информацию. Я хотел бы сделать это таким образом, чтобы все типичные приложения (DB, File, SMTP) все еще поддерживались.
Как настроить log4net таким образом, чтобы свойства объекта можно было сопоставить с выходом журнала?