decimal b = 100.0M; decimal c = 50; int d= int.Parse((b+c).ToString()); 报错
时间: 2024-01-12 12:04:29 浏览: 23
这段代码的问题在于将一个 `decimal` 类型的变量 `b` 和一个 `int` 类型的变量 `d` 相加,会导致类型不匹配而报错。要修复这个问题,可以将 `d` 的类型改为 `decimal` 类型,代码如下:
```
decimal b = 100.0M;
decimal c = 50;
decimal d = b + c;
```
这样就可以将 `b` 和 `c` 相加并赋值给 `d`,而不会报错。
相关问题
protected void btnOrder_Click(object sender, EventArgs e) { //检查库存 if (CheckStock() == false) { return; } DataSet ds = business.GetList(int.Parse(Session["UserId"].ToString())); List<string> missStock = new List<string>(); //循环片段购物车中的商品,添加订单数据 for (int I = 0; I < ds.Tables[0].Rows.Count; I++) { DataTable dt = ds.Tables[0]; BLL.XiangXiDDBusiness bus = new BLL.XiangXiDDBusiness(); XiangXiDD xx = new XiangXiDD(); xx.OrderID = DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString() + DateTime.Now.Millisecond.ToString(); xx.SPID = long.Parse(dt.Rows[I]["SPID"].ToString()); xx.SPName = dt.Rows[I]["SPName"].ToString(); xx.SPPrice = Convert.ToDecimal(dt.Rows[I]["SPPrice"].ToString()) * decimal.Parse(dt.Rows[I]["Num"].ToString()); xx.shuliang = Convert.ToInt32(dt.Rows[I]["Num"].ToString()); xx.Member = Session["UserName"].ToString(); bus.Add(xx); } business.ClearCart(int.Parse(Session["UserId"].ToString())); //清空购物车 Alert.AlertAndRedirect("结算成功!", "Default.aspx"); }
这是一个 ASP.NET 网页中的 C# 代码,实现了一个按钮(btnOrder)的点击事件,用于结算购物车中的商品。代码中通过调用 CheckStock() 方法来检查库存是否充足,如果不充足则返回。然后通过调用 business.GetList() 方法来获取用户购物车中的商品列表,并且循环遍历每个商品,将其添加到订单数据中。添加订单数据时,使用了 XiangXiDD 类来表示详细订单信息,订单编号(xx.OrderID)使用了当前时间的毫秒数构成,商品ID(xx.SPID)、商品名称(xx.SPName)、商品单价(xx.SPPrice)、商品数量(xx.shuliang)、会员名(xx.Member)等属性都从商品列表中获取。最后,通过调用 business.ClearCart() 方法来清空用户的购物车,然后弹出一个提示框,提示用户结算成功。
protected void Button3_Click(object sender, EventArgs e) { string res; upload up = new upload(); res = up.Up(file1, "../files/"); this.Label1.Visible = true; this.Label1.Text = up.Resup[Convert.ToInt32(res)]; this.pic.Text = up.s; Image1.ImageUrl = "../files/" + pic.Text; } protected void Button1_Click(object sender, EventArgs e) { //实例化对象 Model.CPInfo en = new Model.CPInfo(); en.SPName = title.Text.ToString().Trim(); en.SPNum = decimal.Parse(TextBox3.Text); en.SPPrice = decimal.Parse(TextBox2.Text); en.SPIntroduce = content1.Value ; en.SPPhoto = pic.Text; en.SPID = int.Parse(Request.QueryString["id"].ToString()); //商品业务逻辑层 BLL.CPInfoBusiness busi = new BLL.CPInfoBusiness(); busi.UpdateBySpid(en); Alert.AlertAndRedirect("修改成功", "SPManger.aspx"); }
根据代码看,这是一个ASP.NET的页面,其中包含了两个按钮的点击事件,一个用于上传文件,一个用于修改商品信息。具体实现如下:
1. Button3_Click 上传文件
在该事件中,首先实例化了一个upload对象,然后调用其Up方法上传文件到指定路径。这个Up方法的返回值是一个字符串,表示上传状态。接下来根据上传状态,将标签Label1的可见性设置为true,并显示上传结果。
2. Button1_Click 修改商品信息
在该事件中,首先实例化了一个Model.CPInfo对象,然后将页面上的商品信息赋值给该对象。接着实例化了一个BLL.CPInfoBusiness对象,调用其UpdateBySpid方法更新数据库中的商品信息。最后弹出提示框,并重定向到SPManger.aspx页面。
总的来说,这段代码是一个简单的ASP.NET页面,实现了上传文件和修改商品信息的功能。