У меня возникли проблемы с тем, что я должен реализовать для обновления, и SQL Server через C#.Обновление базы данных SQL Server с помощью C#
Ситуация в том, что пользователь может захотеть обновить продукт в системе, и если изображение не выбрано, поля, в которых хранятся пути изображения, имеют значение NULL.
Я поставил чек, чтобы проверить, имеет ли файл управления загрузкой файл для его загрузки, но если у элемента управления нет файла, он должен запустить запрос обновления для обновления оставшихся полей, а не поля, привязанного к элемент управления файловой системой.
Ниже приведен код для страницы.
protected void FormView1_ItemUpdating(object sender, FormViewUpdateEventArgs e)
{
FileUpload FileUpload1 = (FileUpload)FormView1.FindControl("FileUpload3");
FileUpload FileUpload2 = (FileUpload)FormView1.FindControl("FileUpload4");
if (FileUpload1.HasFile)
{
string virtualFolder1 = "~/ProductArt/Thumb/";
string physicalFolder1 = Server.MapPath(virtualFolder1);
string oldkey = e.Keys["ItemID"].ToString();
//string photopath1 = e.OldValues["ThumbPath"].ToString();
string ext1 = System.IO.Path.GetExtension(FileUpload1.FileName);
FileUpload1.SaveAs(System.IO.Path.Combine(physicalFolder1, oldkey + ext1));
//e.Values["ThumbPath"] = photopath1 + ext1;
e.NewValues["ThumbPath"] = virtualFolder1 + oldkey + ext1;
}
else
{
//throw new Exception("Error, no thumb file selected");
SqlConnection connect = new SqlConnection("TTEConnectionString");
connect.Open();
SqlCommand cmdQuery = new SqlCommand(@"UPDATE Item SET ItemName='" + txtItemNameTextBox.Text + "', PublisherID='" + ddlPublisher.SelectedValue);
}
if (FileUpload2.HasFile)
{
string virtualFolder2 = "~/ProductArt/";
string physicalFolder2 = Server.MapPath(virtualFolder2);
string oldkey2 = e.Keys["ItemID"].ToString();
//string photopath1 = e.OldValues["ThumbPath"].ToString();
string ext2 = System.IO.Path.GetExtension(FileUpload2.FileName);
FileUpload2.SaveAs(System.IO.Path.Combine(physicalFolder2, oldkey2 + ext2));
//e.Values["ThumbPath"] = photopath1 + ext1;
e.NewValues["PhotoPath"] = virtualFolder2 + oldkey2 + ext2;
}
else
{
throw new Exception("Error, no full box file selected");
}
}
Кроме того, всякий раз, когда я набираю в идентификатор в текстовом поле ASP это дало бы
и название хххх не существует в текущем контексте
ошибки.
'UPDATE' без предложения WHERE' hmmm – Habib
Ну, я пытался создать запрос, хотя я продолжаю получать ошибку« имя не существует в текущем контексте ». Мне что-то не хватает. –
[SQL Injection alert] (http://msdn.microsoft.com/en-us/library/ms161953%28v=sql.105%29.aspx) - вы должны ** не ** объединить свои SQL-запросы - использовать ** параметризованные запросы ** вместо того, чтобы избежать SQL-инъекции –