Jak sformatować dane pochodzące z instrukcji DataBinder.Eval na stronie ASPX?Formatowanie DataBinder.Eval danych
Na przykład chcę wyświetlić opublikowaną datę wiadomości w określonym formacie na stronie głównej. Używam kontrolki Repeater ASP.NET 2.0, aby wyświetlić listę elementów wiadomości.
Kod za tym idzie tak:
<asp:Repeater ID="Repeater1" runat="server" DataSourceID="ObjectDataSource1">
<HeaderTemplate><table cellpadding="0" cellspacing="0" width="255"></HeaderTemplate>
<ItemTemplate>
<tr><td >
<a href='/content/latestNews.aspx?id=<%#DataBinder.Eval(Container.DataItem, "id") %>'>
<asp:Label ID="lblNewsTitle" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "title") %>'></asp:Label>
</a>
</td></tr>
<tr><td>
<asp:Label ID="lblNewsDate" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "publishedDate"))%>'></asp:Label>
</td></tr>
</ItemTemplate>
<FooterTemplate></table></FooterTemplate></asp:Repeater>
Czy istnieje sposób mogę nazwać niestandardową metodę z wartością DataBinder.Eval jako parametr (coś jak poniżej)?
<asp:Label ID="lblNewsDate" runat="server" Text='<%# GetDateInHomepageFormat(DataBinder.Eval(Container.DataItem, "publishedDate")))%>'></asp:Label>
Jeśli tak, to gdzie mam napisać metodę GetDateInHomepageFormat? Próbowałem w kodzie za stroną, ale dostałem błąd czasu wykonywania? Jeśli nie jest to możliwe, czy istnieje sposób na formatowanie wbudowane?
wielką odpowiedź ... także warto dodać link do tej f lub cały format C# String dla DateTime pod adresem http://www.csharp-examples.net/string-format-datetime/ – naveen
Dobra odpowiedź, ale chcę tylko podkreślić brakujący "}" i dodatkowy " ] "na końcu wyrażenia formatu w powyższym przykładzie etykiety. Powinno to być: ..., "{0: dddd d MMMM}")%> ' – PhillFox
@PhillFox Dobry połów. Dzięki, naprawiłem to. – DOK