2014-01-15 47 views
0

創建Quartz.NET計劃我的應用程序升級到ASP.NET MVC 5(.NET 4.5)後,我建立一個調度客戶端時,出現以下錯誤:不能在ASP.NET MVC 5

類型'System.Web.HttpContextWrapper'in Assembly'System.Web, Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'是 未標記爲可序列化。

異常被拋出在這裏:

var sf = new StdSchedulerFactory(); 
var sched = sf.GetScheduler(); 

的Web.config:

<quartz> 
    <add key="quartz.scheduler.instanceName" value="RemoteClient" /> 
    <add key="quartz.threadPool.type" value="Quartz.Simpl.SimpleThreadPool, Quartz" /> 
    <add key="quartz.threadPool.threadCount" value="5" /> 
    <add key="quartz.threadPool.threadPriority" value="Normal" /> 
    <add key="quartz.scheduler.proxy" value="true" /> 
    <add key="quartz.scheduler.proxy.address" value="tcp://127.0.0.1:555/QuartzScheduler" /> 
</quartz> 

回答

1

Quartz.NET裏面應該ASP.NET(MVC)應用程序與.NET 3.5肯定工作, 4.0和4.5。應該沒有可以將HTTP上下文序列化的地方。

+0

我使用的是從的NuGet最新版本: 「<包ID =」 石英」版本= 「2.2.1」 targetFramework = 「net45」/ >」。包中沒有4.5版本,只有net35和net40。我應該從源代碼構建它嗎? –

+0

我似乎咖啡因一直很低,沒有像.NET 4.5那樣的庫版本可以與.NET 4.5很好,對不起。我使用ASP.NET MVC 5運行2.2.1,沒有任何問題。 是否刪除遠程代理更改任何東西? –

+0

我已經構建了一個新的MVC 5項目,正如您所說,它可以在Quartz.NET 2.2.1中正常工作。也許從MVC 4遷移到5之後會出現一些問題。我會試着找出答案。謝謝! –