我正在使用SignalR 1.1.2版本和Windsor Castle在AspNet MVC 4應用程序。 我的問題是,這個錯誤信息顯示出來,因爲我搬到了新的SignalR版本。請求的性能計數器不是自定義計數器,它必須初始化爲ReadOnly。「on RouteTable.Routes.MapHubs();
"The requested Performance Counter is not a custom counter, it has to be initialized as ReadOnly."
在該行
RouteTable.Routes.MapHubs();
這是RegisterHubs類
public static class RegisterHubs
{
public static void Start()
{
var signalrDependencyContainer = new WindsorContainer().Install(new HubsInstaller());
var signalrDependency = new SignalrDependencyResolver(signalrDependencyContainer.Kernel);
GlobalHost.DependencyResolver = signalrDependency;
RouteTable.Routes.MapHubs();
}
}
我已經嘗試了一些事情我已經在互聯網上找到,如:
lodctr /R
cd C:\Windows\Inf\.NETFramework
lodctr corperfmonsymbols.ini
但我仍然得到同樣的錯誤消息。有任何想法嗎?
我正在使用dotnet框架4.5。
這是堆棧跟蹤
at System.Diagnostics.PerformanceCounter.InitializeImpl()
謝謝!
UPDATE 我添加了德魯請求的屏幕截圖。
您能提供整個堆棧跟蹤,而不僅僅是最底層的條目嗎?這將有助於確定SignalR中哪裏出錯。 –
這就是它的一切,沒有別的。 – polonskyg
這不太可能。你可以截取你所看到的任何截圖嗎?根據您迄今爲止告訴我們的情況,我認爲您在SignalR嘗試連接其性能計數器時看到了第一次機會異常。如果您在初始化perf計數器的地方查看SignalR源代碼,您將看到初始化可能失敗的許多原因以及SignalR如何正確處理這些原因。 https://github.com/SignalR/SignalR/blob/master/src/Microsoft.AspNet.SignalR.Core/Infrastructure/PerformanceCounterManager.cs#L378 –