【发布时间】:2016-01-10 18:28:25
【问题描述】:
我是新的 ASP.NET Web 窗体开发人员,我正在使用 ASP.NET 4.5。我现在正在努力将语句从使用 ModelBinding 转换为 Eval,因为我正在使用 ObjectDataSource。
ASP.NET 代码行:
<asp:TemplateField HeaderText="Item Total">
<ItemTemplate>
<%#: String.Format("{0:c}", ((Convert.ToDouble(Item.Quantity)) * Convert.ToDouble(Item.Product.UnitPrice)))%>
</ItemTemplate>
</asp:TemplateField>
我不想使用 ModelBinding 并说 Item.Quantity 或 Item.Product.UnitPrice,而是使用 Eval 语句,因为这行代码包含在绑定到 ObjectDatasSource 的 ASP.NET GridView 中。那我该怎么做呢?
我尝试如下:
<asp:TemplateField HeaderText="Item Total">
<ItemTemplate>
<%# String.Format("{0:C}", Double.Parse(DataBinder.Eval(Container.DataItem, "Quantity").ToString())) %>
*
<%# String.Format("{0:C}", Double.Parse(DataBinder.Eval(Container.DataItem, "TTSF_Product.UnitPrice").ToString())) %>
</ItemTemplate>
</asp:TemplateField>
但不幸的是它给了我以下结果:
4.00 美元 * 22.50 美元
而不是进行数学计算,我不知道为什么。 那么我该如何修复那行代码呢?
提前感谢您的帮助。
【问题讨论】:
标签: c# asp.net gridview webforms