2011-05-03 52 views
0

這個小小的asp.net代碼有一些缺點。 如果itemrow爲空,它將失敗。 如果該項目比10個字符短,你就已經知道了。更好的「左/子串」解決方案<%#Container.DataItem%>

<asp:LinkButton ID="lbnHistory" CommandName="lbnHistory" 
    CommandArgument="'<%# Container.DataItem %>' 
    Text='<%# ((string)Container.DataItem).ToString().Substring(5,10) %>' 
    runat="server"> 
</asp:LinkButton> 

我也可以用repeatercommandevent解決這個問題,我用這個任務。 爲了簡化,我希望它用逗號分隔的字符串填充。 任務本身非常簡單,不值得創建和迭代強類型。

您認爲如何?

+0

只是注意的幾個:<%#DataBinder.Eval(Container.DataItem,「someField」)%> =強類型。 – Independent 2011-05-03 07:43:55

+0

只是注意這不是一個自定義的類,但它似乎這個轉發器迭代字符串集合... – 2011-05-03 07:52:35

+0

@Matías它是一個「長」的字符串,拆分成行與.Split [';']。由於某些重新加載網頁的操作,字符串正在增長。 – Independent 2011-05-03 07:55:17

回答

1

哎呀,我想我是深入其他雖然。 你只需要創建一個公共方法,並將其包裝成..

爲澄清起見.. <%#SampleTruncing((串)的Container.DataItem)%>

相關問題