0
我正在使用.NET 4.5.2創建ASP.NET Web API。 API需要在啓動時連接到運行空間。我對這個Startup.Configuration方法實際運行的時間有疑問。當我啓動網站或應用程序池時似乎沒有運行。它似乎等到有人第一次嘗試訪問該網站。它是否正確?此外,它似乎隨機再次運行。我已經看到它在2小時,4小時和16小時後運行。它沒有任何意義。這些方法應該運行時,有人可以爲我清理嗎?另外,如果你有一個更好的地方放置它們的建議,因爲我希望它成爲所有連接的共享運行空間,並且我希望它在任何人試圖連接到API之前運行。也許一個單獨的服務?ASP.NET Web API啓動問題
另外,是否值得看看ASP.NET CORE?我不需要它運行IIS以外的其他任何程序,但是如果使用CORE有好處,我就可以輕鬆切換。
public partial class Startup
{
public Cache GlobalCache;
public static PowershellRunspace PSRunspace;
public static ActiveDirectory ADObjects = new ActiveDirectory();
public void Configuration(IAppBuilder app)
{
ConfigureAuth(app);
GlobalCache = new Cache();
AppLog log = new AppLog();
log.InfoLog("Starting PowerShell Runspace in Hangfire...", true);
GlobalConfiguration.Configuration.UseSqlServerStorage("Hangfire");
BackgroundJob.Enqueue(() => log.InfoLog("Hangfire started!", true));
BackgroundJob.Enqueue(() => ADObjects.Startup(true));
BackgroundJob.Enqueue(() => StaticRunspace.Start());
app.UseHangfireDashboard();
app.UseHangfireServer();
}
}
謝謝,這解釋了我所看到的一切。 –