2017-02-22 53 views
0

我試圖將column綁定到datalist,並且column nameStandard Size Supported (bytes)。 而datalisttable,我這樣做是爲了column如下:帶括號的Eval列名稱

<tr> 
    <td colspan="1">Standard Size Supported (bytes)</td> 
    <td colspan="3"> 
    <asp:Label ID="lblStandard" runat="server" Text='<%# Eval("Standard size supported (bytes)")%>' class="form-control"></asp:Label> 
    </td> 
</tr> 

在執行的代碼,它給我的錯誤列不存在。我知道這是由於column名稱中的括號。我試過<%# ((DataRowView)Container.DataItem)["Standard size supported (bytes)"] %><%# DataBinder.GetPropertyValue(Container.DataItem, "Standard size supported (bytes)") %>。但它不起作用,有什麼想法?它來自現有系統並假設我無法重命名column

+0

嘗試使用'的String.Format()' –

+1

爲什麼你有這樣的奇怪的列名?在你的服務器代碼中儘可能簡化它是你的手中的權利?另外,爲什麼你使用兩個_Data Binding_表達式? –

+0

我的歉意@RahulSingh,我編輯了我的帖子。不幸的是,它仍然無法正常工作。對不起,你簡化它意味着什麼?正如我所提到的,它來自現有的系統,而不是由我設置。所以它也擊敗了我,爲什麼列被命名爲 –

回答

-1

@Rahul Singh提出的另一種解決方法。 在選擇查詢,我把它改成

"SELECT `Standard size supported (bytes)` as 'Standard' FROM `tableA` 

,並在aspx文件,我已經改變了Eval

<tr> 
    <td colspan="1">Standard Size Supported (bytes)</td> 
    <td colspan="3"> 
    <asp:Label ID="lblStandardMTU" runat="server" Text='<%# Eval("Standard") %>' class="form-control"></asp:Label> 
    </td> 
</tr>