Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 查询的参数有问题_C# - Fatal编程技术网

C# 查询的参数有问题

C# 查询的参数有问题,c#,C#,向查询传递参数时遇到问题引发此异常 参数化查询“(@ididicador int)插入[AtentoMIG].[dbo].[Indicator]([Nom”需要未提供的参数“@ididicador”。 这是我的代码 _sqlCommand = new SqlCommand ("INSERT INTO [AtentoMIG].[dbo].[Indicator]" + "([Name]"

向查询传递参数时遇到问题引发此异常

参数化查询“(@ididicador int)插入[AtentoMIG].[dbo].[Indicator]([Nom”需要未提供的参数“@ididicador”。

这是我的代码

_sqlCommand = new SqlCommand
              ("INSERT INTO [AtentoMIG].[dbo].[Indicator]"                      
                  + "([Name]"
                  + ",[Descripction])"
                  + "VALUES"
                  + "('" + data[0] + "'"
                  + ",'" + data[13] + "') SET @IdIndicador = SCOPE_IDENTITY()", _sqlConexion);

SqlParameter idIndicador = new SqlParameter("@IdIndicador", SqlDbType.Int);
_sqlCommand.Parameters.Add(idIndicador);
_sqlCommand.Connection.Open();
_sqlCommand.ExecuteNonQuery();
int id = (int)idIndicador.Value;

_sqlConexion.Close();
return true;
为什么我做错了?对我来说,代码看起来不错。请尝试添加:

SqlParameter idIndicador = new SqlParameter("@IdIndicador", SqlDbType.Int);
idIndicator.Direction = ParameterDirection.Output;
// ...

除了你的错误,SQL注入问题。@Joe这与我的问题无关,而且,这只是一个测试。我知道可以注入代码。你知道这很好,其他人不可能知道这只是测试代码。只是让你注意到它,目的是说“除了你的错误”指的是事实,我知道这是无关的。