PDA

View Full Version : پاكسازي فايل ها در Asp



amir_T_2008
یک شنبه 09 مهر 1396, 15:40 عصر
سلام دوستان

من يك فولدر دارم كه يك سري عكس داخلش هست حالا در ديتابيس 50% نام اين عكس ها هستش و بقيه به درد نخور هستن حالا اگر بخوايم ما تك تك برسي كنيم كه آيا نام اين عكس وجود دارد يا خير و در صورت نبودن خود فايل عكس از فولدر پاك كنيم خيلي زمان بر هستش من ميخوام يك دكمه بذارم كه هر چند وقت با كليك خودش بررسي كنه و درصورت نبودن فايل عكس پاك كنه ممنون ميشم كمك كنيد.

Tekyegah
یک شنبه 09 مهر 1396, 17:41 عصر
سلام
ابتدا باید یه کد بنویسی که اسم تمامی فایل های درون فولدرت رو بدست بیاری ، این مطلب رو بخون :
https://stackoverflow.com/questions/6047228/listing-folders-in-a-directory-using-asp-net-and-c-sharp

بعد چک کنی اگه تو دیتابیست هست که هیچی ، اگه نیست از فولدر حذفش کنی .

amir_T_2008
دوشنبه 10 مهر 1396, 12:13 عصر
سلام
ابتدا باید یه کد بنویسی که اسم تمامی فایل های درون فولدرت رو بدست بیاری ، این مطلب رو بخون :
https://stackoverflow.com/questions/6047228/listing-folders-in-a-directory-using-asp-net-and-c-sharp

بعد چک کنی اگه تو دیتابیست هست که هیچی ، اگه نیست از فولدر حذفش کنی .
مشکلم کد Sql هستش که بیاد چک کنه و اگر نبود کل فایل موجود تو فولدر حذف کنه

Tekyegah
دوشنبه 10 مهر 1396, 22:41 عصر
خب اینطوری که راحت تره
یه select بزن واسه بدست آوردن اسم فایل های دیتابیست ، بعد چک کن ببین اگه همچین فایلی وجود داره که هیچی ، اگه نداره اون رکورد رو حذف کن .

amir_T_2008
سه شنبه 11 مهر 1396, 08:13 صبح
خب اینطوری که راحت تره
یه select بزن واسه بدست آوردن اسم فایل های دیتابیست ، بعد چک کن ببین اگه همچین فایلی وجود داره که هیچی ، اگه نداره اون رکورد رو حذف کن .

خوب نه دیگه مشکلم اینه اگر نبود چطوری دستوری بنویسم که بیاد فایل هایی که نیست به صورت فیزیکی پاک کنه وگرنه حذف رکورد مشکل ندارم

Tekyegah
چهارشنبه 12 مهر 1396, 00:09 صبح
قبل از حذف هر فایل باید چک کنی ببینی هست یا نه :

VB :

If Not System.IO.File.Exists("File.jpg") Then
// فانشن حذف رو صدا بزن
End If

#C :


if (!System.IO.File.Exists("File.jpg")) {
// فانشن حذف رو صدا بزن
}

حالا شما از این استفاده کن اونجایی که میگه فایل بصورت فیزیکی وجود نداره ، شماره ID اون رکورد رو که داری ،بفرستش سمت یه فانشن بگو این رکورد رو حذف کن .

amir_T_2008
شنبه 15 مهر 1396, 09:26 صبح
سعی کردم به جواب نرسیدم

Tekyegah
شنبه 15 مهر 1396, 23:55 عصر
درست میشه انشالله
فکر کنم الان بهترین کار این باشه شما کدت رو بذاری ببینیم کجاش اشتباست .