2013-02-12 15 views
9

मैं ASP.Net MVC प्रोजेक्ट में NLog2 का उपयोग करने के लिए Common.Logging को कॉन्फ़िगर करने के लिए NuGet संकुल का उपयोग करने का प्रयास कर रहा हूं। नीचे दिए गए यूआरएल पर दी गई जानकारी के आधार पर, मेरा मानना ​​है कि मेरे लॉगर्स ठीक से कॉन्फ़िगर किए गए हैं, लेकिन मुझे कॉन्फ़िगरेशन त्रुटियां मिलती रहती हैं।मैं सामान्य.लॉगिंग को सफलतापूर्वक कैसे कॉन्फ़िगर कर सकता हूं?

<configuration> 
    <configSections> 
     <section name="nlog" type="NLog.Config.ConfigSectionHandler, NLog"/> 
     <sectionGroup name="common"> 
      <section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" /> 
     </sectionGroup> 
    </configSections> 
    <common> 
     <logging> 
     <factoryAdapter type="Common.Logging.NLog.NLogLoggerFactoryAdapter, Common.Logging.NLog20"> 
      <arg key="configType" value="INLINE" /> 
     </factoryAdapter> 
     </logging> 
    </common> 
    <nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
     <targets> 
     <target name="logfile" xsi:type="file" filename="e:\logfile.txt" layout="${date:format=yyyy/MM/dd HH:mm:ss} ${message}" /> 
     </targets> 
     <rules> 
     <logger name="*" minlevel="Trace" writeTo="logfile" /> 
     </rules> 
    </nlog> 
    <runtime> 
     <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
     <dependentAssembly> 
      <assemblyIdentity name="Common.Logging" publicKeyToken="af08829b84f0328e" culture="neutral" /> 
      <bindingRedirect oldVersion="0.0.0.0-2.0.0.0" newVersion="2.0.0.0" /> 
     </dependentAssembly> 
     </assemblyBinding> 
    </runtime> 
</configuration> 

जहां तक ​​मेरा बता सकते हैं, यह सब कुछ मैं चाहिए:

Common.Logging Configuration Instructions

NLog Configuration Tutorial

मैं निर्देशों के अनुसार web.config के लिए निम्न जोड़ दिया है करने की आवश्यकता है, लेकिन जब मैं वेब प्रोजेक्ट चलाने की कोशिश करता हूं तो मुझे कॉन्फ़िगरेशन त्रुटियां मिल रही हैं ...

पार्सर त्रुटि संदेश: आम/प्रवेश के लिए विन्यास अनुभाग हैंडलर बनाने में त्रुटि हुई: बनाने के लिए प्रकार में असमर्थ 'Common.Logging.NLog.NLogLoggerFactoryAdapter, Common.Logging.NLog20'

कर सकते हैं किसी को भी प्रस्ताव क्या गुम है या त्रुटि में सुझाव?

उत्तर

13

समस्या यह प्रतीत होती है कि Common.Logging NuGet पैकेज (v2.0.0) द्वारा जोड़ा गया डिफ़ॉल्ट कॉन्फ़िगरेशन गलत है।

web.config में क्रम अनुभाग निम्न को बदलने की आवश्यकता है:

<dependentAssembly> 
    <assemblyIdentity name="Common.Logging" publicKeyToken="af08829b84f0328e" culture="neutral" /> 
    <bindingRedirect oldVersion="0.0.0.0-65535.65535.65535.65535" newVersion="2.0.0.0" /> 
    </dependentAssembly> 

नोट oldVersion मूल्य। ऐसा लगता है कि त्रुटि का कारण क्या था (कम से कम उस परिदृश्य के आधार पर जो मैंने ऊपर दिए गए प्रश्न में उल्लिखित किया है)।

यह संबंधित गिटहब मुद्दा भी देखें: Possible Issues with Common.Logging/Common.Logging.NLog20 NuGet packages

1

अंत में

<factoryAdapter type="Common.Logging.NLog.NLogLoggerFactoryAdapter, Common.Logging.NLog2"> 

बजाय

<factoryAdapter type="Common.Logging.NLog.NLogLoggerFactoryAdapter, Common.Logging.NLog20"> 

नोटिस 20 बनाम 2 का उपयोग करके मेरे लिए काम किया।

+0

हम्म मुझे नहीं लगता कि कि मौजूद है - आप प्रवेश विधानसभा विफलता चालू (वास्तव में नहीं यकीन है कि) होना चाहिए –

+0

यह वास्तव में एक जवाब नहीं बल्कि अंधविश्वासी, नीचे दिए गए नहीं है: प्रकार 'बनाने के लिए Common.Logging.NLog असमर्थ। NLogLoggerFactoryAdapter, Common.Logging.NLog2 ' – PUG

संबंधित मुद्दे

 संबंधित मुद्दे