2014-11-24 4 views
0

это так, что, когда мне нужно загрузить на право изображение в статье, поэтому он должен удалить старое изображениеУдалите старое изображение, когда он должен загрузить новое изображение

и должно быть ясно, в папке, где изображение находится,

string Tid = DateTime.Now.Ticks.ToString(); 
     string unikID = Guid.NewGuid().ToString(); 
     string url = "~/img/bimg/"; 


     cmd.CommandText = "SELECT img FROM aktiviteter WHERE Id = @id;"; 
     cmd.Parameters.AddWithValue("@Id", id); 

     conn.Open(); 
     SqlDataReader readerImg = cmd.ExecuteReader(); 
     if (readerImg.Read()) 
     { 
      File.Delete(Server.MapPath(url.Remove(0, 1) + readerImg["img"])); 
     } 

     conn.Close(); 

проблема заключается в том, что мне нужно найти изображение в столбце в базе данных, где объект, который должен удалить изображение

Доступ к пути «C: \ Users \ 198407 \ Documents \ Visual Studio 2013 \ WebSites \ Jesper-mm-CRUD \ img \ bimg \ 'отклонено.

мои картины, расположенные здесь: /img/bimg/hello.png

, как это выглядит, когда я загружаю на сервер

string Tid = DateTime.Now.Ticks.ToString(); 
     string unikID = Guid.NewGuid().ToString(); 
     string url = "~/img/bimg/"; 


     cmd.CommandText = "SELECT img FROM aktiviteter WHERE Id = @id;"; 
     cmd.Parameters.AddWithValue("@Id", id); 

     conn.Open(); 
     SqlDataReader readerImg = cmd.ExecuteReader(); 
     if (readerImg.Read()) 
     { 
      File.Delete(Server.MapPath(url.Remove(0, 1) + readerImg["img"])); 
     } 

     conn.Close(); 

     ImageNet.FluentImage img = ImageNet.FluentImage.FromStream(FileUploadImg.FileContent); 
     img.Resize.Scale(360).Save(Server.MapPath(url + unikID + ".png")); 


     if (File.Exists(Server.MapPath(url + unikID + ".png"))) 
     { 
      cmd.CommandText = "UPDATE aktiviteter SET navn = @navn, sted = @sted, indhold = @indhold, img = @img, rubrik = @rubrik, retbrugerID = @retbrugerid WHERE Id = @id;"; 
      cmd.Parameters.AddWithValue("@Id", id); 
      cmd.Parameters.AddWithValue("@navn", navn); 
      cmd.Parameters.AddWithValue("@sted", Sted); 
      cmd.Parameters.AddWithValue("@indhold", Indhold); 
      cmd.Parameters.AddWithValue("@img", unikID); 
      cmd.Parameters.AddWithValue("@rubrik", rubrik); 
      cmd.Parameters.AddWithValue("@retbrugerid", brugerid); 
     } 
+0

Ошибка ясно говорят, есть какой-то вопрос разрешения. Когда вы говорите «сервер», вы имеете в виду IIS? Если это так, убедитесь, что ваш идентификатор пула приложений имеет доступ для чтения/записи к пути. – PoweredByOrange

ответ

1

Так как вы получаете эту ошибку -

Доступ к пути 'C: \ Users \ 198407 \ Documents \ Visual Studio 2013 \ WebSites \ Jesper-mm-CRUD \ img \ bimg \' отрицается.

Я бы предложил, предоставив доступ для чтения/записи этому пользователю = IIS_IUSRS для нужной директории.

Read more helpful link

+1

Это работает еще в стадии строительства. –