简体   繁体   中英

How to solve Windows Azure Diagnostic Runtime Error (Could not create WindowsAzure.Diagnostics, Version=xx, Culture=neutral, PublicKeyToken=xx

privateLibManager libManager;
private LibManager Connect()
{
   this.libManager=new LibManager();//here we are getting an error
}

Error:

The type initializer for 'SWConfigDataClientLib.LibManager' threw an exception

Inner Exception:

Could not create Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitorTraceListener, Microsoft.WindowsAzure.Diagnostics,Version=2.2.0.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35.

Source

IpPbxCDSClientLib

First make sure you have added references to Microsoft.WindowsAzure.Diagnostics from the SDK folders (typically c:\\Program Files\\Microsoft SDKs\\Windows Azure.NET SDK\\v2.2\\ref\\Microsoft.WindowsAzure.Diagnostics.dll)

Next, if you are not running your project in the emulator (ie the cloud project set as the startup project), then set the trace filter level to TraceEventType.Error or TraceEventType.None to avoid trying to write verbose Azure messages to the trace listener. In you web or app config:

  <system.diagnostics>
    <trace>
      <listeners>
        <add type="Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitorTraceListener, Microsoft.WindowsAzure.Diagnostics, Version=2.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" name="AzureDiagnostics">
          <filter level="TraceEventType.Error" />
        </add>
      </listeners>
    </trace>
  </system.diagnostics>

I had the same error.

I was missing a reference to Microsoft.WindowsAzure.Diagnostics

Ok So even I had this exception being thrown continuously. However, my case was a little different.

I wanted to get rid of this reference as it was no longer required in the project. So I removed it from the references. But while running the application, I started getting this exception at a Debug.WriteLine(...); statement which suggested that the reference was required.

On further analysis, I found that the below section was present in the project's app.config file which was the cause of the exception.

<trace>
      <listeners>
        <add type="Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitorTraceListener, Microsoft.WindowsAzure.Diagnostics, Version=2.8.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" name="AzureDiagnostics">
          <filter type="" />
        </add>
      </listeners>
    </trace>

After removing the reference AND also removing the above section from config file, the issue got fixed.

Hope this helps!

确保已将此引用添加到项目Microsoft.Azure.Plugins.Diagnostics.dll

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM