2009-05-22 81 views
0

奇怪的問題,我已經建立了一個asp網站,我有以下問題: -用asp.net網站

我使用中有一個母版頁,並定義了兩個contentplaceholders一個在頭一個的內容,並且我已經在@page指令的頂部指令中指定了頁面標題,但頁面標題沒有顯示。我必須爲它手動添加標籤。

其次,當我從母版頁創建內容頁面時,會創建它,當我重命名它時,它不會重命名它的類。它仍然是_Default,因此每個頁面都具有_default的繼承。

最重要的是 我正在使用頁面輸入數據並將數據查看到數據庫。我使用了一個名爲isadmin的布爾值,我根據頁面加載時的憑據進行設置。我添加了一個可見屬性設置爲Visible = '<%#IsAdmin %>'的面板。它在我通過visual studio環境運行時正常工作,但是當我發佈它並運行它時不起作用,並且面板剛剛到來並停留在那裏。爲什麼會發生?任何想法? 謝謝

可見性問題已修復,因爲我必須在服務器上啓用Windows身份驗證。等待另外兩個問題的答案。謝謝

+0

也許你可以發佈一些代碼,所以我們可以有一個更好的外觀? – gehsekky 2009-05-22 18:11:44

回答

2
  1. 嘗試將<head runat=server>添加到母版頁。只有這樣ASP.net才能「看到」標籤並對其進行修改
  2. 幾個aspx頁面具有相同的類名並不是什麼壞事。 ASP.NET 2.0開始將每個頁面作爲自己的編譯單元進行處理。頁面無法看到對方。有一個特殊的指令可以讓頁面看到對方並對它們進行實例化或操作。所以它不應該造成太大的傷害
  3. 也許你沒有正確地測試這個,並誤以爲它在Visual Studio中工作?但無論如何,我會建議你將你的邏輯移入OnInit,然後運行得更早。我認爲控制樹是在Page.OnLoad之前構建的。你要做的就是數據綁定,如果DataBind已被調用,可能只運行,我不知道

或者使用安全的方式:請IsAdmin一個屬性,使之初始化本身第一個電話和高速緩存的結果一個變量

+0

你是什麼意思添加到母版頁? 我得到了管理員的工作,Web服務器沒有啓用Windows身份驗證。但幫助我的網頁標題。 – 2009-05-22 18:14:30

+0

@Anirudh:我修復了代碼格式。現在您將瞭解@Christian通過「將主頁添加到」的含義。 ;-) – Cerebrus 2009-05-22 18:16:57

0

關於問題2 - 通過項目 - >添加新項目添加您的內容頁面,並在那裏適當地命名它。這樣的命名是始終一致和正確的。

關於#3,從服務器運行時輸出的HTML是什麼?

0

您的第一個問題可以通過在.aspx頁面中填寫@Page指令的標題部分來解決。母版頁將在瀏覽器標題欄中顯示該文本。

和prob#2應該通過使用visual studio中的文件添加選項添加文件來解決。