为方法中的每个int分配一个默认值

时间:2016-04-23 05:02:03

标签: c# sql oop

我有两种方法

 getlisting(string url,int ID)

我想将此ID传递给另一个类中的另一个方法

class cc=new class();
cc.updatevalue(ID);

现在我想将此int值传递给该updatevalue方法并为其赋值0。每次getlisting有不同的ID并将其传递给更新方法。我也试过if else条件。所以我的问题是任何人都可以帮助我为每个即将到来的int值分配默认的0值。 分配后我想在我的DataTable中更新它

 SqlCommand cmd = new SqlCommand("UPDATE Paging SET Status='1' WHERE ID ='ID'", obj.openConnection());

和ID抛出一个错误,无法将varchar转换为数据类型,告诉我我可以为每个int赋予默认值并使其等于ID的条件。感谢

2 个答案:

答案 0 :(得分:2)

我怀疑问题出在您的SQL上,我建议使用参数化查询,因此您的代码应该是......

SqlCommand cmd = new SqlCommand("UPDATE Paging SET Status=@status WHERE ID =@id", obj.openConnection());

cmd.Parameters.Add("@status", SqlDbType.Int).Value = 1; // modify this to varchar if status is string
cmd.Parameters.Add("@id", SqlDbType.Int).Value = ID;

在旁注中,我们可以指定参数的默认值,然后查看Named and Optional Arguments

答案 1 :(得分:-1)

SqlCommand cmd = new SqlCommand("UPDATE Paging SET Status='1' WHERE ID ='" . ID . "'", obj.openConnection());

您将ID作为字符串' ID'而不是你的变量。