我的應用程序使用Microsoft.Office.Interop.Excel服務來生成Excel報告並以PDF形式下載。如果多個用戶請求相同的頁面,我:e;同樣的服務,那麼第一個用戶可以得到結果,但後面的用戶會生成一些異常。我們可以通過爲每個用戶提供單獨的線程i:e來避免這種情況嗎?如果有人在跑步,那麼其他人必須等待幾秒鐘。使用每個用戶的線程訪問公共服務
這裏是我的代碼:
protected void btn2games_Click(object sender, ImageClickEventArgs e)
{
myfilepath = "acd.xlsx";
try
{
string sr = Server.MapPath(myfilepath.ToString());
if (File.Exists(myfilepath))
{
File.Delete(myfilepath);
}
}
catch
{
}
ExceltoPdf();
}
protected void ExceltoPdf()
{
//here the code goes : to fetch data from DB and write to Excel using Office.Interop.Excel
}
嘗試獲得一些第三方組件,它們將創建您的Excel表格和PDF文件......在您的生產環境中安裝Excel並使其運行得非常正常(根據同事的帳戶)是一種痛苦... 對於pdfs,我一直在使用DynamicPdf,它一直運行良好。 – mortb 2012-04-04 08:30:25
請與我們分享例外。這是一個Web應用程序或客戶端應用程序? – Slugart 2012-04-04 08:30:29