У меня есть простая таблица с тремя полями:
ID (int)
FormData (xml)
TimeStamp (DateTime).
Я создал хранимую процедуру для вставки значений в таблицу, которая работает успешно.Тем не менее, в моем try-catch он перехватывает
System.Data.SqlClient.SqlException: процедура или функция spInsertApplication ожидает параметр '@formDataDecoded', который не был предоставлен.
Однако параметр @formDataDecoded вставляется в базу данных в порядке.
Есть идеи?Я не уверен, куда идти дальше?
Вот хранимый процесс:
ALTER PROCEDURE [dbo].[spInsertApplication]
-- Add the parameters for the stored procedure here
@formDataDecoded xml,
@timestamp DateTime
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
INSERT INTO Applications (formXML, TimeStamp) VALUES (@formDataDecoded, @timestamp)
END
Вот c #:
string con = ConfigurationManager.AppSettings["umbracoDbDSN"];
using (SqlConnection connection = new SqlConnection(con))
{
String encodedFormData = HttpUtility.UrlDecode(formData);
SqlCommand command = connection.CreateCommand();
command.CommandType = CommandType.StoredProcedure;
command.CommandText = "spInsertApplication";
command.Parameters.AddWithValue("@formDataDecoded", encodedFormData);
command.Parameters.AddWithValue("@timestamp", DateTime.Now);
try
{
connection.Open();
command.ExecuteNonQuery();
}
catch (Exception ex)
{
String errorSql = "INSERT INTO ErrorLog(ErrorText) VALUES (@errorText)";
SqlCommand errorCommand = new SqlCommand(errorSql, connection);
errorCommand.Parameters.AddWithValue("@errorText", ex.ToString());
errorCommand.ExecuteNonQuery();
Response.Redirect("/enterprise-superstars/sounds-like-you-are-already-a-star.aspx");
}
finally
{
connection.Close();
}
}
И я получаю formDataкак это:
String formData = Request.Form["xmlToVar"];
, который я передаю методу saveApplicationform.
Заранее спасибо.
РЕДАКТИРОВАТЬ
РанТрассировка SQL Server Profiler на нем и оказывается, что sproc вызывается дважды.
Эта флеш-форма вызывает определенную страницу, и мне нужно, чтобы кто-нибудь посмотрел на флэш-код и увидел, как он публикуется, поскольку я его не писал.