Căutați directoare pentru tone de fișiere?

Eu folosesc MSVE, și am propriile mele dale, pe care le afișez în straturi de sus. Problema este că există o mulțime de ele și sunt pe un server de rețea. În anumite directoare există ceva de ordinul a 30.000 de fișiere. Inițial am sunat la Directory.GetFiles, dar odată ce am început să testez într-un mediu pseudo-real, acesta a expirat.

Care este cel mai bun mod de a lista în lista programatică și de a trece prin multe dintre aceste fișiere?

Editare: Colaboratorul meu a sugerat utilizarea serviciului de indexare MS. A încercat cineva această abordare și cum a funcționat?

0
adăugat editat
Vizualizări: 4

5 răspunsuri

Am lucrat la un sistem SAN în trecut cu înregistrări audio de telefonie care aveau probleme cu numerele de fișiere într-un singur dosar - acest sistem a devenit inutilizabil undeva în jur de 5.000 (pe Windows 2000 Advanced Server cu o aplicație în C# .Net 1.1) singura soluție sensibilă la care am venit a fost să schimbăm structura folderului astfel încât să existe un număr mai rezonabil de fișiere. Interesant este faptul că exploratorul va înceta, de asemenea!

Convenția cu care am venit a fost o structură care a spart structura în ani, luni și zile - dar asta va depinde de sistemul dvs. și dacă puteți controla structura directorului ...

0
adăugat
(Sunt acum la o companie noua, dar imi amintesc partile acestui proiect.) Problema este ca AFAIK, MSVE a avut o structura de directoare pe care se astepta si totul pentru un singur layer a intrat intr-un singur folder. Nu am analizat suficient acest lucru pentru a ști dacă am putea agrega mai multe foldere, astfel încât MSVE să poată privi în toate acestea sau să privească în anumite foldere la anumite nivele.
adăugat autor Adam V, sursa

Ai putea folosi DOS?

DIR /s/b > Files.txt
0
adăugat

De asemenea, vă puteți uita fie la indexarea fișierelor, fie la obținerea unei aplicații din a treia parte, cum ar fi desktopul Google sau copernic pentru ao face și apoi interfața cu indexul lor. Știu că copernic are un API pe care îl puteți utiliza pentru a căuta orice fișier din indexul său și sprijină, de asemenea, cartografierea unităților de rețea.

0
adăugat

Categoric, le-ați despărțit. Acestea fiind spuse, stați cât mai departe de Serviciul de indexare, după cum puteți.

0
adăugat
Nu am reușit niciodată să încercăm să folosim serviciul de indexare, din fericire. Echipa din care făceam parte este acum la o singură persoană. Așa că cred că această parte a proiectului a scăzut în jos pe lista de priorități.
adăugat autor Adam V, sursa

Nici unul. .NET se bazează pe apelurile Windows API care stau la baza faptului că într-adevăr urăsc acea cantitate de fișiere.

După cum spune Ronnie: despărțiți-i.

0
adăugat