我有一個gridview,其中一個單元格將顯示一個文件的鏈接,如果該文件存在於數據庫中,但是我的Eval不起作用。如何檢查一個字節[]是否包含使用Eval的客戶端的任何字節?
<asp:TemplateField HeaderText="Certificate" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:HyperLink runat="server" Text='<%#Eval("imgCertificate") == null ? "" : "View" %>' ID="hlFile" />
</ItemTemplate>
</asp:TemplateField>
當我運行代碼,我總是得到的鏈接,因爲imgCertificate對象不是null,則是一個byte [0]。我如何檢查這個?
編輯:這是我的新代碼,現在我收到以下錯誤:
編譯器錯誤信息:CS1061:「對象」不包含「長度」,沒有擴展方法「長度」接受的定義類型「對象」的第一個參數可以找到(是否缺少using指令或程序集引用?)
<asp:TemplateField HeaderText="Certificate" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:HyperLink runat="server" Text='<%#(byte[])Eval("imgCertificate").Length == 0 ? "" : "View" %>' ID="hlFile" />
</ItemTemplate>
</asp:TemplateField>
是否'Eval'是不是在客戶端上。 – SLaks
該錯誤是由缺少括號引起的。看到我的答案。 – SLaks