儘管自從ASP.Net 2.0以來我一直是Databound控件的狂熱粉絲,並且自從學習它們以來一直在使用它們,但我似乎偶然發現了一個未被注意的(或者沒有被關注的) )這些控制似乎有問題。數據綁定控件的空值正在呈現
我正在使用ASP.Net 3.5,我注意到的問題是,在數據控件(如Datalist,Gridview等)中使用Databound控件(如Labels,HyperLinks)時,即使值返回一列是NULL
,它仍然呈現爲空白標記。
例如:我有一個Datalist
其中我有一個Label
其值可能是或可能不是NULL
。現在沒有問題,當值不是NULL
時,問題是當值是NULL
。理想情況下,對於沒有任何值的控件,不應呈現HTML,但在這種情況下,對應的NULL
值的控件的HTML(<span></span>
在標籤的情況下)仍在呈現。
現在,正如我剛纔所說,大多數人都不會在意這個,因爲它是沒有太大問題的,但如果你考慮的是,這種控制可以在父控件的層次結構進行封閉,然後重複許多次,這可能會顯着增加HTML內容(因爲您的HTML內容的ID基於父控件),而沒有添加任何文本來維持文本/ HTML比率,從而成爲搜索引擎迴避的原因從完全索引您的網頁。
我在其他地方找不到任何與此事有關的事情,所以我想把它放在這裏。這是數據綁定控件的問題嗎?還是我在這裏丟失了一些東西?
幫助總是讚賞。
首先,感謝您的回覆。嗯,這裏有一個問題出知識的缺乏 - 我還沒有與ASP.Net 4.0工作,只是聽說了動態控制,可以將這些動態控件幫助解決這個問題? – Anchit 2011-02-28 17:30:43
另一件事,當我們把'Visible =「false」;'HTML不呈現,但服務器仍然知道它,所以,在服務器端,如果HTML不在這裏呈現,應該沒有任何問題。關於客戶端,如果我們使用Visible =「false」隱藏控件,也會出現問題;'所以我想我提出的觀點仍然有效。 – Anchit 2011-02-28 17:35:41