Прежде всего, я знаю, что такие вопросы повторяются, но обратите внимание на это. Вот мой C# код, за которым поднять ошибку как:Процедура или функция 'x' ожидает параметр '@y', который не был указан. Ошибка на C#?
процедуры или функции «ааа» ожидает параметр «@bbb», который не был поставлен.
if (Dt.Rows.Count > 0)
{
Cmd = new SqlCommand();
Cmd.CommandText = ("[dbo].[aaa]");
Cmd.CommandType = CommandType.StoredProcedure;
Cmd.Parameters.Add("@bbb", SqlDbType.Int).Value = 1;
Cmd.Parameters.Add("@LettType", SqlDbType.VarChar, 3).Value = LetterType;
Cmd.Parameters.Add("@IsTajamo", SqlDbType.Char, 1).Value = 1;
Da = new SqlDataAdapter(Cmd.CommandText, Con);
Dt.Clear();
/*Line72:*/
Da.Fill(Dt);
}
Технически, я не могу там, где это ошибка. Я передал все параметры. И когда я выполняю свою хранимую процедуру отдельно в MS-SQL, она работает правильно с этими значениями.
Можете ли вы, эксперты, помочь мне в этом вопросе? Внимание: здесь ХП:
ALTER PROCEDURE [dbo].[aaa] (@bbb Int , @LettType CHAR(3) , @IsTajamo CHAR(1))
AS
BEGIN
select 1
END
Внимание: (может быть, это может помочь, вот мой стек трассировки):
в System.Data.SqlClient.SqlConnection.OnError (SqlException исключение, Логическое breakConnection, Действие
1 wrapCloseInAction) at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action
1 wrapCloseInAction) при System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning (TdsParserStateObject stateObj, булева callerHasConnectionLock, булева asyncClose) при System.Data.SqlClient.TdsParser.TryRun (RunBehavior runB ehavior, SqlCommand cmdHandler, SqlDataReader DATASTREAM, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean & dataReady) в System.Data.SqlClient.SqlDataReader.TryConsumeMetaData() в System.Data.SqlClient.SqlDataReader.get_MetaData() в системе .Data.SqlClient.SqlCommand.FinishExecuteReader (SqlDataReader DS, runBehavior runBehavior, String resetOptionsString, Boolean IsInternal, булева forDescribeParameterEncryption) при System.Data.SqlClient.SqlCommand.RunExecuteReaderTds (CommandBehavior cmdBehavior, runBehavior runBehavior, булева returnStream, булевы async, таймаут Int32, задача & задача, булева asyncWrite, булева inRetry, SqlDataReader DS, булева describeParameterEncryptionRequest) при System.Data.SqlClient.SqlCommand.RunExecuteReader (CommandBehavior cmdBehavior, RunBehavior runBehavior, булева returnStream, String метод, TaskCompletionSource`1 завершение, Int32 тайм-аут, задача & задача, Логическое & usedCache, булева asyncWrite, булева inRetry) при System.Data.SqlClient.SqlCommand.RunExecuteReader (CommandBehavior cmdBehavior, RunBehavior runBehavior, булева returnStream, String метод) при System.Data.SqlClient.SqlCommand .ExecuteReader (CommandBehavior beha ВИОР, метод String) в System.Data.SqlClient.SqlCommand.ExecuteDbDataReader (CommandBehavior поведение) при System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader (CommandBehavior поведение) при System.Data.Common. DbDataAdapter.FillInternal (DataSet dataset, DataTable [] datatables, Int32 startRecord, Int32 maxRecords, Строка srcTable, команда IDbCommand, поведение CommandBehavior) в System.Data.Common.DbDataAdapter.Fill (DataTable [] DataTables, Int32 startRecord, Int32 MaxRecords, команда IDbCommand, CommandBehavior поведение) при System.Data.Common.DbDataAdapter.Fill (DataTable DataTable) в WebService.Services.GetLettersList (String UserName, Строка PassPhrase, строка CodeName, String LetterType) в D: \ Амири \ WebService \ WebService \ Services.asmx.cs: линия 79
@Satpal Нет проблем с процедурой. , если вы правильно прочитали вопрос, прежде чем помечать. вы можете понять, что я сказал. процедура работает правильно. – AminAmiriDarban
Я прочитал вопрос и еще не отмечен. Однако для меня проблема кажется, что фрагмент кода будет полезен для разрешения – Satpal
@ نرخیاب: спорить с теми, кто пытается помочь вам, - это хороший способ помочь этой помощи. Тем не менее, наиболее распространенной причиной этой ошибки в моем опыте является неправильное использование имени параметра. Проверить написание. –