PDA

View Full Version : چگونگی ادرس دهی برای حذف عکسی که در فولدر ذخیره شده



smm2006sh
چهارشنبه 30 شهریور 1390, 16:22 عصر
به سلام
من گرید ویو که دارم یه دکمه از موارد حذفی که گرید داره را براش گذاشتم و الان درست کار میکنه اما میخوام وقتی دکمه حذف زده میشه نه تنها ادرس اون از بانک بلکه خود عکس هم از فولدر مربوطه حذف بشه (البته میدونم مثل وقتی که داریم عکس را به فولدر میفرستیم یه تابع حذف هم داشت اما من میخوام با باتن گرید این کار را بکنم):گیج::گیج:

A.S.Roma
چهارشنبه 30 شهریور 1390, 17:00 عصر
در ایونت ondeleting گریدعکس رو پاک کنید.

komeil64
چهارشنبه 30 شهریور 1390, 17:03 عصر
از event های دیتا گرید استفاده کن و دستورتو توی rowdelete بنویس

hjran abdpor
چهارشنبه 30 شهریور 1390, 17:17 عصر
با سلام.
از RowCommand گریدو استفاده کن و بعد از حذف ادرس عکس فایل را نیز حذف کن به اینصورت :

protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{

if (e.CommandName == "remove")
{
کد برای حذف خود عکس (البته قبلش ادرس را حذف کن
try {

FileInfo TheFile = new FileInfo(MapPath(".") + "\\" + txtFile.Text);
if (TheFile.Exists) {
File.Delete(MapPath(".") + "\\" + txtFile.Text);
}
else {

throw new FileNotFoundException();
}
}

}
}

smm2006sh
چهارشنبه 30 شهریور 1390, 17:22 عصر
سلام
ممنن از جواباتون اما من اینجوری آدرس عکس را حذف میکنم

<asp:SqlDataSource ID="SqlDataSource3" runat="server"
ConnectionString="<%$ ConnectionStrings:esfahanWoodDataBaseConnectionStr ing8 %>"
SelectCommand="SELECT companyName, companyManager, galleryImage, productCategoryType, companyID, productCategoryID, galleryID, userPassword FROM company_gallery WHERE (companyID = @companyID)"
DeleteCommand="DELETE FROM companyGallery WHERE (galleryID = @galleryID)">
<SelectParameters>
<asp:SessionParameter DefaultValue="0" Name="companyID"
SessionField="companyCode" />
</SelectParameters>
</asp:SqlDataSource>

حالا اینجا که به ایونت ها ربطی نداره ؟؟؟

hjran abdpor
چهارشنبه 30 شهریور 1390, 17:34 عصر
خوب دوست عزیز راه حل زیاد داره ، مثلا یه تابع بنویس که مقدار کلید را بگیره و براون اساس خود عکس را حذف کنه ، ولی این روش کاراتر و ساده تر است .

smm2006sh
پنج شنبه 31 شهریور 1390, 08:47 صبح
سلام
اقا من به جواب نرسیدم
بببینید من اینجوری عکس را حذف میکنم : زیر گرید یه تکس باکس تعریف کردم و حالا طرف کد عکس را وارد میکنه سپس اول عکس از فولدر پاک میشه و بعد ادرس اون از بانک
اما کدا بازم عکس را پاک نمیکنه

protected void btnDelete_Click(object sender, EventArgs e)
{

SqlConnection con = new SqlConnection(connection.connectionStr);
SqlDataAdapter da=new SqlDataAdapter ("select productImage from companyCategory where productCategoryID='" + txtCode.Text.Trim() + "'",con);
DataTable dt = new DataTable();
da.Fill(dt);
string str = dt.Rows[0][0].ToString();

File.Delete(MapPath("~/all_images/Gallery/smallImage") + "//" + str);
File.Delete(MapPath("~/all_images/Gallery") + "//" + str);

database db = new database(connection.connectionStr);
db.delete("companyCategory", "productCategoryID='" + txtCode.Text.Trim() + "'");

}
یکی کمکم کنه :گریه::گریه:

fakhravari
پنج شنبه 31 شهریور 1390, 15:55 عصر
این تابع بسار خوب جواب میده

public void DeleteImag()
{
FileInfo TheFile = new FileInfo(Server.MapPath(@"../../ImgNews/") + ImageFileName);
if (TheFile.Exists)
{
File.Delete(Server.MapPath(@"../../ImgNews/") + ImageFileName);
}
else
{
throw new FileNotFoundException();
}
}