2009-10-20 1045 views
43

¿Hay alguna forma de excluir un tipo particular de archivo .cs al realizar una búsqueda en Visual Studio 2005/8?Cómo excluir designer.cs de la búsqueda de archivos de Visual Studio

Ejemplo: En un escenario de refactorización podría buscar identificar literales de cadena en mi código para que pueda refactorizarlos en constantes o algo así. Sin embargo, los archivos * designer.cs están llenos de literales de cadenas que no me preocupan pero aparecen en mi búsqueda y contaminan el conjunto de resultados.

lo general busco Cs * ...

¿Cómo puedo ignorar .designer.cs *?

+0

alguna posibilidad de que puede publicar su solución como una respuesta. La respuesta aceptada ahora está enlazando a un 404 – Blowsie

+2

Todos podemos votar por la función en Visual Studio aquí: https://visualstudio.uservoice.com/forums/121579-visual-studio-2015/suggestions/2907413-add-exclude- files-to-the-look-in-options-under ¡Doooooo! – Polshgiant

Respuesta

12

Veo que es bastante tarde, pero mirando el número de votos y la actividad en esta página, estoy publicando mi respuesta; tal vez alguien más lo encuentre útil. Así es cómo puede hacerlo en VS2010 y versiones posteriores:

  1. Consola de Open Package Manager (Herramientas> NuGet Package Manager> Administrador de paquetes Console). Deje que PowerShell se inicialice solo.
  2. Introduzca el siguiente comando en PowerShell Prompt:

    dir -Recurse | Select-String -pattern "Your Search Word Or Pattern" -exclude "*.designer.cs"

  3. Esto mostrará una lista de todas las apariciones de la palabra o patrón que ha especificado, incluyendo el nombre del archivo, número de línea y la línea de texto donde estaba encontró.

Notas adicionales

  1. Si desea especificar exclusiones múltiples patrones, reemplazar "*.designer.cs" con @("*.designer.cs", "*.designer.vb", "reference.cs") o cualquier otro archivo que desea omitir.
  2. Otra cosa buena es que el patrón de búsqueda también admite expresiones regulares.
  3. Una desventaja de esta solución es que no permite hacer doble clic en una línea del resultado para abrir ese archivo en Visual Studio. Puede solucionar esta limitación a través de comandos de tuberías:

    dir -Recurse | Select-String -pattern "Your String Or Pattern" -exclude "*.designer.vb" | sort | Select -ExpandProperty "Path" | get-unique | ForEach-Object { $DTE.ExecuteCommand("File.OpenFile", """$_""") }

Esto abrirá todos los archivos donde se encontró la secuencia o patrón en Visual Studio. A continuación, puede usar Buscar ventana en archivos individuales para localizar las instancias exactas.

Otra ventaja de esta solución es que también funciona en las versiones Express, ya que Package Manager se incluye en las versiones Express de 2012 y 2013; no estoy seguro acerca de 2010 sin embargo.

+0

Este último comando arroja una carga de ventanas que dice "La operación no se pudo completar" en Visual Studio 2015 en una solución VB. –

+0

Encontré la respuesta - Reemplazar ("File.OpenFile", $ _) con ("File.OpenFile", "" "$ _" ""). Esto es para envolver los nombres de los archivos entre comillas ya que la ruta incluye espacios. También considere agregar * .VB si busca una solución completa. Obtuve muchos archivos extraños hasta que lo hice. –

5

El billete de Microsoft Connect "Find option to exclude designer generated code" indica que filtrar la búsqueda por extensión del archivo no estará presente en VS 2010.

+1

Esta respuesta ahora no es válida, ya que es posible filtrar por tipo de archivo en VS2010 –

+0

@ hamlin11 ¿Puede proporcionar una referencia para esto? –

+1

Claro, hice una captura de pantalla. Use "Buscar en archivos" http://i.imgur.com/UzI3l.png –

1

me encontré con esta pregunta en mi búsqueda de una respuesta a este mismo problema.

sintió frustrado con VS y cayeron de nuevo en mi copia fiel de UltraEdit y especificar estas opciones en su función "Buscar en archivos":

File names/extensions to ignore in search: 

    *.pdb;*.dll;*.exe;*designer.vb;*.xsd;*.xml;*.xss;*.resx; 
+0

@sammeric: Gracias por el consejo y bienvenidos a SO. ¿Hay una versión gratuita de UltraEdit? Me gusta el Notepad ++ pero no parece tener la función de ignorar búsqueda. (Por cierto, las firmas no son necesarias en las respuestas de SO. Todas sus publicaciones están firmadas automáticamente con su nombre y avatar). –

+0

Lamentablemente, no existe una versión gratuita de UltraEdit. Pagué una copia porque la he usado durante años (originalmente para su modo de edición de columna antes de que VS agregara esa característica). Tiene un montón de características potentes que hacen que valga la pena el gasto. Uso el scripting de la búsqueda de expresiones regulares y lo reemplazo solo por nombrar una característica. – samneric

31
*a.cs;*b.cs;*c.cs;*d.cs;*e.cs;*f.cs;*g.cs;*h.cs;*i.cs;*j.cs;*k.cs;*l.cs;*m.cs;*n.cs;*o.cs;*p.cs;*q.cs;*s.cs;*t.cs;*u.cs;*v.cs;*w.cs;*x.cs;*y.cs;*z.cs;*_.cs;*..cs;*ar.cs;*br.cs;*cr.cs;*dr.cs;*fr.cs;*gr.cs;*hr.cs;*ir.cs;*jr.cs;*kr.cs;*lr.cs;*mr.cs;*nr.cs;*or.cs;*pr.cs;*qr.cs;*rr.cs;*sr.cs;*tr.cs;*ur.cs;*vr.cs;*wr.cs;*xr.cs;*yr.cs;*zr.cs;*_r.cs;*.r.cs;*aer.cs;*ber.cs;*cer.cs;*der.cs;*eer.cs;*fer.cs;*ger.cs;*her.cs;*ier.cs;*jer.cs;*ker.cs;*ler.cs;*mer.cs;*oer.cs;*per.cs;*qer.cs;*rer.cs;*ser.cs;*ter.cs;*uer.cs;*ver.cs;*wer.cs;*xer.cs;*yer.cs;*zer.cs;*_er.cs;*.er.cs;*aner.cs;*bner.cs;*cner.cs;*dner.cs;*ener.cs;*fner.cs;*hner.cs;*iner.cs;*jner.cs;*kner.cs;*lner.cs;*mner.cs;*nner.cs;*oner.cs;*pner.cs;*qner.cs;*rner.cs;*sner.cs;*tner.cs;*uner.cs;*vner.cs;*wner.cs;*xner.cs;*yner.cs;*zner.cs;*_ner.cs;*.ner.cs;*agner.cs;*bgner.cs;*cgner.cs;*dgner.cs;*egner.cs;*fgner.cs;*ggner.cs;*hgner.cs;*jgner.cs;*kgner.cs;*lgner.cs;*mgner.cs;*ngner.cs;*ogner.cs;*pgner.cs;*qgner.cs;*rgner.cs;*sgner.cs;*tgner.cs;*ugner.cs;*vgner.cs;*wgner.cs;*xgner.cs;*ygner.cs;*zgner.cs;*_gner.cs;*.gner.cs;*aigner.cs;*bigner.cs;*cigner.cs;*digner.cs;*eigner.cs;*figner.cs;*gigner.cs;*higner.cs;*iigner.cs;*jigner.cs;*kigner.cs;*ligner.cs;*migner.cs;*nigner.cs;*oigner.cs;*pigner.cs;*qigner.cs;*rigner.cs;*tigner.cs;*uigner.cs;*vigner.cs;*wigner.cs;*xigner.cs;*yigner.cs;*zigner.cs;*_igner.cs;*.igner.cs;*asigner.cs;*bsigner.cs;*csigner.cs;*dsigner.cs;*fsigner.cs;*gsigner.cs;*hsigner.cs;*isigner.cs;*jsigner.cs;*ksigner.cs;*lsigner.cs;*msigner.cs;*nsigner.cs;*osigner.cs;*psigner.cs;*qsigner.cs;*rsigner.cs;*ssigner.cs;*tsigner.cs;*usigner.cs;*vsigner.cs;*wsigner.cs;*xsigner.cs;*ysigner.cs;*zsigner.cs;*_signer.cs;*.signer.cs;*aesigner.cs;*besigner.cs;*cesigner.cs;*eesigner.cs;*fesigner.cs;*gesigner.cs;*hesigner.cs;*iesigner.cs;*jesigner.cs;*kesigner.cs;*lesigner.cs;*mesigner.cs;*nesigner.cs;*oesigner.cs;*pesigner.cs;*qesigner.cs;*resigner.cs;*sesigner.cs;*tesigner.cs;*uesigner.cs;*vesigner.cs;*wesigner.cs;*xesigner.cs;*yesigner.cs;*zesigner.cs;*_esigner.cs;*.esigner.cs;*adesigner.cs;*bdesigner.cs;*cdesigner.cs;*ddesigner.cs;*edesigner.cs;*fdesigner.cs;*gdesigner.cs;*hdesigner.cs;*idesigner.cs;*jdesigner.cs;*kdesigner.cs;*ldesigner.cs;*mdesigner.cs;*ndesigner.cs;*odesigner.cs;*pdesigner.cs;*qdesigner.cs;*rdesigner.cs;*sdesigner.cs;*tdesigner.cs;*udesigner.cs;*vdesigner.cs;*wdesigner.cs;*xdesigner.cs;*ydesigner.cs;*zdesigner.cs;*_designer.cs 

Hola, simplemente copia y pega el anterior para " Mira estos tipos de archivos:"

-Steven Chong

+3

Aunque esto funciona porque '* .designer.cs' no se muestra en los resultados de búsqueda, la inclusión en la lista blanca no es lo mismo que la lista negra de los criterios. Por ejemplo, si quería ignorar '* .designer.cs' y' Reference.cs', esta lista blanca falla. –

+0

es una solución alternativa, Visual Studio guardará su lista. puedo publicar otra lista blanca si quieres ignorar tanto * .designer.cs y reference.cs, que personalmente me pareció útil y quiero compartir –

+7

es tan feo que me gusta :-D – slawekwin

9

Para Visual Studio 2010 probar la extensión Ultra Find. Puede excluir explícitamente extensiones.

Using Ultra Find to search files with cs extension but excluding designer.cs and generated.cs files.

Tenga en cuenta que la velocidad de búsqueda depende de si usted está buscando el sistema de archivos o el proyecto/solución.

+8

Desafortunadamente no hay búsqueda Regex en Ultra Find, reduce algo de Ultraness ... – Helo

+2

Es una pena que se haya eliminado la extensión Ultra Find. ¿Alguien sabe de algo más? – wasatchwizard

+0

@wasatchwizard También estoy buscando algo similar. ¿Tienes algo de suerte para encontrar algo (específicamente VS2012)? –

0

Realmente sopla una respuesta, pero esto es lo que hice después de probar 'Excluir del proyecto' sólo para encontrar que estos archivos también se realizaron búsquedas .

Todos los archivos que no quería incluir se encontraban, afortunadamente, en una carpeta de la raíz llamada 'Archivados' así que ... Corté y pegué el archivo en mi escritorio.

Quizás sea por eso que Ultra Find Extension desapareció ... los desarrolladores pueden agrupar todos los archivos no deseados en una carpeta fuera de la raíz web y simplemente eliminarlos mientras realizan búsquedas, LOL.

0

sólo archivos de búsqueda tipos: * .aspx.vb

enter image description here

Cuestiones relacionadas