2012-09-03 42 views
2

Possible Duplicate:
How to create thead and tbody in ASP.NET Table?服務器端的HTML表中ASP.NET 4.5

未編譯下面的HTML不會以ASP.NET網站

<table runat="server" id="tbl1"> 
    <tbody> 
    <tr> 
     <td> 
     </td> 
    </tr> 
    </tbody> 
</table> 

我得到這個編譯錯誤編譯:

The best overloaded method match for ‘System.Web.UI.HtmlControls.HtmlTableRowCollection.Add(System.Web.UI.HtmlControls.HtmlTableRow)’ has some invalid arguments 
  • 這個錯誤在安裝VS2012和.NET 4.5後開始出現
  • 它發生在兩個VS2012和VS2010
  • 它出現在ASP.NET網站項目模板,代碼編譯在ASP.NET WebApplication的項目模板精細
  • 刪除「RUNAT」屬性或「TBODY時,錯誤將消失「標籤
  • 奇怪的是,該項目編譯失敗,但成功的出版沒有錯誤
  • 頁面正確呈現在瀏覽器中
  • 如果我卸載VS2012和.NET 4.5相同的代碼在VS2010
  • 再次工作

更新:

我不知道爲什麼這個問題是擺在首位關閉,這是不是重複。無論如何,微軟已經承認這是一個錯誤,並正在進行修復。更多信息here

+0

可能是TBODY標籤不支持ASP:表,因爲當我們添加表內runat屬性也使得它在服務器上運行,並充當asp:表 –

+0

@DennisTraub我不認爲它是重複的。這當然是相關的,但是這從一個例外的角度來處理這個問題。雖然答案就在這個問題上。 – Scott

+0

我不明白爲什麼這個問題被認爲是重複的,我不是問如何用tbody創建一個表,但是我的問題是關於在安裝VS2012和.NET 4.5之後開始發生的一些奇怪的行爲。爲簡單起見,問題中的例子就是簡單的。 – Fahad

回答

-1

你可能也想嘗試:

<table id="yourId" runat="server"> 
    <thead> 
     . 
     . 
     . 
    </thead> 
     <tbody> 
      <tr> 
      <td> 
      </td> 
      </tr>  
      </tbody> 
    </table> 
+0

的副本我試過你的例子但同樣的錯誤仍然出現 – Fahad