次のSQL Server 2008r2データソースにバインドされたasp.net gridviewがあります。
<asp:SqlDataSource ID="dsFault" runat="server" DataSourceMode="DataSet"
ConnectionString="<%$ ConnectionStrings:ESBExceptionDb %>"
SelectCommand="select * from Fault order by datetime desc"></asp:SqlDataSource>
私の Fault テーブルには、datetime 型の DateTime という列があります。この列に格納されている値は UTC 形式であり、ブラウザーのローカル タイムゾーンで表示する必要があります。
次のように、グリッド ビューの Columns コレクションにテンプレート フィールドを追加しました。
<asp:TemplateField>
<ItemTemplate>
<asp:Label ID="lblLocalTime" runat="server"
Text='<%# String.Format("{0:f}", Eval("DateTime").ToLocalTime()) %>'>
</asp:Label>
</ItemTemplate>
</asp:TemplateField>
ページを参照すると、次のエラーが表示されます。
CS1061: 'object' does not contain a definition for 'ToLocalTime' and no
extension method 'ToLocalTime' accepting a first argument of type 'object'
could be found (are you missing a using directive or an assembly reference?)
どこが間違っているのか誰か教えてください。
ありがとう、ロブ。