我有一個自定義的dll加載到我的Web應用程序中,我更新了它並重新加載了我的主要Web應用程序中的引用。基本上,它的工作方式是用戶上傳一個由dll中的函數檢查的文件。然後,用戶可以單擊結果部分中重定向到應用程序主要部分的按鈕,以便他們可以選擇重新運行檢查器;我說節是因爲Web應用程序使用一個帶有兩個div的頁面,一個用於表單,另一個用於結果,後面的代碼則將結果div的可見性從結果div中交換出來,這是澄清的基本佈局。ASP.Net Web應用程序的dll加載問題
<body>
<div id="divForm" style="visibility: visible;">
</div>
<div id="divResults">
</div>
</body>
重定向呼叫是在後面的代碼如下:
protected void btnReturn_Click(object sender, EventArgs e)
{
Response.Redirect("http://localhost/file_checker/");
}
和主件文件檢查器:
protected void Page_Load(object sender, EventArgs e)
{
divForm.Visible = true;
divResults.Visible = false;
if (Page.IsPostBack)
{
//Do file checking
//Show results
divResults.Visible = true;
divForm.Visible = false;
}
}
的Web應用程序工作正常第一遍但是,在接下來的所有傳球后,我都會注意到奇怪的行爲例如,我注意到結果頁面顯示的是舊版dll的陳舊內容,即它顯示了一個由較舊版本的dll生成的字符串,我已經刪除了字符串,但仍然生成。我不知道我是否正確重定向,或者如果我對重定向的工作有一些其他根本的誤解。任何幫助或洞察力,表示讚賞。
UPDATE:
好,而不是重定向,我只是清除了我的結果部分中的GridView和交換樣式的div的顯示主要部分和隱藏結果部分如下:
protected void btnReturn_Click(object sender, EventArgs e)
{
//Clear the Gridview and show the upload Form
GridView1.DataSource = null; //<--Is popoulated by a DataTable
divForm.Visible = true;
divResults.Visible = false;
//Response.Redirect("http://localhost/file_checker/");
}
這似乎解決了這個問題,我留下的一個縈繞的問題是,我正在使用Datatable在結果頁面中填充Gridview。在每次頁面加載或按鈕單擊事件後,Datatable是否自動處理?還是會持續?我只是想避免任何內存泄漏問題,因爲每個頁面加載實例化一個新的DataTable對象。
什麼是「可見性:隱藏」?看起來像CSS,但它不在style =「」屬性中。 – 2011-06-16 17:02:42
我假設psuedocode。他還需要在aspx頁面中使用runat =「server」和visible =「true」或visible =「false」才能使其工作。 – NerdFury 2011-06-16 17:05:36
對不起,我會改正的,沒有可見性隱藏。你可以忽略,對於混淆抱歉。 – kingrichard2005 2011-06-16 17:06:23