困扰我3天的问题,超奇怪

ykhads 2004-12-08 11:25:12
在开发一套购物程序,这
shoppingcart.aspx
string CartName;
int Power;
public SqlDataReader ReadShoppingCart(string CartName2,int Power)
{

DataConnection dc=new DataConnection();
SqlConnection conn=dc.CreatConnection();
SqlCommand SC = new SqlCommand("showshoppingcart", conn);
SC.CommandType = CommandType.StoredProcedure;

SqlParameter ParameterPower = new SqlParameter("@power", SqlDbType.Int,4);
ParameterPower.Value = Power;

SqlParameter ParameterCartName = new SqlParameter("@cartname", SqlDbType.NVarChar,50);
ParameterCartName.Value = CartName2;

conn.Open();
SqlDataReader result = SC.ExecuteReader(CommandBehavior.CloseConnection);

// 返回 datareader 结果
return result;
}
private void ShowShoppingCart()
{ CartName=GetCartName();
if (this.GetItemCount(CartName) == 0)
{
DetailsPanel.Visible = false;
MyError.Text = "你的购物车中没有任何物品.";
}
else
{
if (Session["CDShop_UserLevel"]==null)
{
Power=0;
}
else
{
Power=(int)Session["CDShop_UserLevel"];
}
this.ShoppingCartList.DataSource=this.ReadShoppingCart(CartName,Power);
ShoppingCartList.DataBind();
cart.GetTotal(cartId));
}
}

private void Page_Load(object sender, System.EventArgs e)
{
ShowShoppingCart();
}

存储过程
create proc showshoppingcart
(@cartname nvarchar(50),@power int)
as
if @power=0
begin
select pd.pname,cart.quantity,pd.pricemarket,Cast((pd.pricemarket*cart.quantity) as money) from cdshop_shoppingcart
cart,cdshop_product pd where cart.pid=pd.pid and cart.cartname=@cartname order by cart.id asc
end

else if @power=1--会员
begin
select pd.pname,cart.quantity,pd.price13,Cast((pd.price13*cart.quantity) as money) from cdshop_shoppingcart
cart,cdshop_product pd where cart.pid=pd.pid and cart.cartname=@cartname order by cart.id asc
end

else if @power=2--星级会员
begin
select pd.pname,cart.quantity,pd.price35,Cast((pd.price35*cart.quantity) as money) from cdshop_shoppingcart
cart,cdshop_product pd where cart.pid=pd.pid and cart.cartname=@cartname order by cart.id asc
end

else if @power=3--vip会员
begin
select pd.pname,cart.quantity,pd.pricevip,Cast((pd.pricevip*cart.quantity) as money) from cdshop_shoppingcart
cart,cdshop_product pd where cart.pid=pd.pid and cart.cartname=@cartname order by cart.id asc
end
GO

错误的提示是
System.Data.SqlClient.SqlException: 过程 'showshoppingcart' 需要参数 '@cartname',但未提供该参数。
但是我有提供
CartName=GetCartName();//CartName绝对没问题,我做过测试可以读出来
this.ShoppingCartList.DataSource=this.ReadShoppingCart(CartName,Power);
我现在担心的是不是我存储过程格式错掉还是
哪里错掉,明明有传 进去CartName,但却提示没传进去,昏死掉了
...全文
54 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
ykhads 2004-12-09
  • 打赏
  • 举报
回复
谢谢
我再顶
ykhads 2004-12-09
  • 打赏
  • 举报
回复
终于解决了
一时疏忽造成这个错误
rmryt 2004-12-09
  • 打赏
  • 举报
回复
不懂,去ASp.Net区问这个问题比较恰当。
xiaoslong 2004-12-08
  • 打赏
  • 举报
回复
帮你顶一下
ykhads 2004-12-08
  • 打赏
  • 举报
回复
哪位朋友能帮忙下,我整个进度都卡在这里了
昏死了

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧