尝试做一些应该相当直接的事情,但试图让它运转起来绞尽脑汁。基本上我想要做的就是在gridview中有一个计算列,它将基于同一行中的两个值。
即。一个Unit_Cost(money)和一个rate(nvarchar(20))列被绑定到DB但是我希望从2开始计算总成本。我正在使用BLL从我的DAL中检索数据相信这段代码应该有效 - 但它不会:(
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
CropManagementDAL.TBL_RunRow run = (CropManagementDAL.TBL_RunRow)
((System.Data.DataRowView)e.Row.DataItem).Row;
if (!run.IsUnit_costNull())
{
if (!run.IsRateNull())
{
_totalUnitPrice = run.Unit_cost * Convert.ToInt16(run.Rate);
e.Row.Cells[5].Text = _totalUnitPrice.ToString();
}
}
}
}
我收到“输入字符串格式不正确”的错误。它突出显示了我的_totalUnitPrice = ...我的代码的一部分。我相信对你们其中一个人来说这很简单,非常感谢你的帮助!
答案 0 :(得分:0)
如果_totalUnitPrice
是字符串,则需要将数值转换为字符串,然后再将其传入。
这样做的一种方法是:
_totalUnitPrice = (run.Unit_cost * Convert.ToInt16(run.Rate)).ToString();