对象不能从 DBNull 转换为其他类型。
对象不能从 DBNull 转换为其他类型。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.InvalidCastException: 对象不能从 DBNull 转换为其他类型。
源错误:
行 124: <asp:TemplateField HeaderText="加权退保保费" ItemStyle-HorizontalAlign="Center">
行 125: <ItemTemplate>
行 126: <asp:Label ID="lblTotals_1" runat="server" Text='<%#Convert.ToDecimal(Eval("Weighted_Surrender_Premium"))%>'></asp:Label>
行 127: </ItemTemplate>
行 128: <FooterTemplate>
报错原因是查询结果没有数据,求解:当查询结果没有数据时,如何不报错???
[解决办法]
实在不想用sql解决的话 就写个三目运算也可以
<%#Convert.ToDecimal(Eval("Weighted_Surrender_Premium")==DBNull.Value?0:Eval("Weighted_Surrender_Premium"))%>