2013-07-23 4 views
0

У меня проблема с конфигурацией EmailTraceListener. Я получаю ActivationException с внутренним исключением с этим сообщением:Блок регистрации Entlib ActivationException при использовании EmailTraceListener

Тип TraceListener не может быть сконструирован. Вы должны настроить контейнер для подачи этого значения.

Вот мой app.config код конфигурации регистрации:

<configuration> 
    <configSections> 
    <section name="loggingConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.LoggingSettings, Microsoft.Practices.EnterpriseLibrary.Logging, Version=5.0.505.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/> 
    </configSections> 
    <loggingConfiguration name="Logging Application Block" tracingEnabled="true" defaultCategory="" logWarningsWhenNoCategoriesMatch="true"> 
    <listeners> 
     <add 
     name="Email Trace Listener" 
     type="Microsoft.Practices.EnterpriseLibrary.Logging.TraceListeners.EmailTraceListener, Microsoft.Practices.EnterpriseLibrary.Logging, Version=5.0.505.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" 
     listenerDataType="Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.EmailTraceListenerData, Microsoft.Practices.EnterpriseLibrary.Logging, Version=5.0.505.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" 
     fromAddress="[email protected]" 
     toAddress="[email protected]" 
     smtpServer="smtp.gmail.com" 
     smtpPort="587" 
     authenticationMode="UserNameAndPassword" 
     useSSL="true" 
     userName="fromAddress" 
     password="password" 
     formatter="Text Formatter"/> 
    </listeners> 
    <formatters> 
     <add 
     type="Microsoft.Practices.EnterpriseLibrary.Logging.Formatters.TextFormatter, Microsoft.Practices.EnterpriseLibrary.Logging, Version=5.0.505.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" 
     template="{severity}{tab}{timestamp(local:dd/MM/yyyy [HH:mm:ss:FFFF] zzz)}{tab}{title}{tab}{message}{tab} 
{dictionary([P]: {key}{tab}= {value} 
)}" 
     name="Text Formatter" /> 
    </formatters> 
    <specialSources> 
     <allEvents switchValue="All" name="All Events"> 
     <listeners> 
      <add name="FlatFile TraceListener"/> 
     </listeners> 
     </allEvents> 
     <notProcessed switchValue="All" name="Unprocessed Category"/> 
     <errors switchValue="All" name="Logging Errors &amp; Warnings"/> 
    </specialSources> 
    </loggingConfiguration> 
</configuration> 

Если я заменяю электронной слушателю конфигурации с плоской файл конфигурации слушателя - все работает отлично. Где ошибка в конфигурации прослушивателя электронной почты?

ответ

1

Проблема в том, что категория «Все события» по-прежнему подключена к FlatFile TraceListener, которая больше не существует. В вашем файле также есть несколько других ошибок, которые, вероятно, должны быть устранены. Я бы рекомендовал использовать Configuration Console вместо ручной кодировки конфигурации или, по крайней мере, открыть конфигурацию в Консоли конфигурации, когда вы закончите ее проверку.

Смежные вопросы