2011-10-01 25 views
8

Estaba trabajando en una clase en Visual Studio 2010 cuando de repente mi computadora falla. después de que reinicie la computadora. Inicié Visual Studio y encuentro que la clase está completamente vacía. contenía más de 1000 líneas de códigos antes de la clase. de todos modos, ¿puedo recuperar ese archivo?Recuperar un archivo de clase .CS después del bloqueo

Ayuda por favor, porque no tengo otra copia del mismo (Estúpido de mí)

+5

@Oded, creo que podemos inferir de 'No tengo otra copia' que el control de fuente no esté involucrado. –

+0

Lo siento, no sé a qué te refieres con el control de código fuente. Estaba trabajando en una aplicación ASP.NET C# y la clase perdida contenía una gran cantidad de métodos que estoy usando en la aplicación – Youssef

Respuesta

18

Si no puede encontrar el archivo de código fuente, trate de usar Reflector descompilar el archivo DLL de construcción más reciente que haya que contiene esa clase. No le dará su fuente completa, pero al menos le dará algo para empezar.

Nota: El reflector ya no es gratuito; si eso importa, intente con dotPeek desde JetBrains.

Además, considere el uso de un sistema source code control. Esto le permitirá 'comprometer' versiones de su código a un repositorio, por lo que tendrá una copia en caso de que algo como esto ocurra en el futuro.

Subversion, Git, y Mercurial son populares; En mi opinión, Subversion sería la más fácil de empezar, especialmente con TortoiseSVN (integración de sistema operativo) y AnkhSVN (integración de Visual Studio). Si no desea preocuparse por la configuración de un repositorio/servidor, busque una solución alojada, como Beanstalk, que ofrece Subversion y Git y le permite probarlo con una cuenta gratuita y limitada.

¡Buena suerte! ¡Espero que puedas recuperar tu fuente!

+0

.NET Reflector tiene una versión de prueba de 14 días que es perfecta para recuperar archivos dañados. Aquí hay algunos de lo que puede esperar: Todos los métodos se reordenaron alfabéticamente; la mayoría de los nombres de variables reemplazan por genéricos como 'list2', 'node2', etc; muchos calificadores redundantes agregados al código; todos los comentarios perdidos; algún código fragmentadoPero si va a tener que comenzar de nuevo con el archivo, esta opción es mucho mejor. Como Rizwan se menciona a continuación, ** NO RECONSTRUYE ** el proyecto si desea que esta solución funcione. – user3738893

+0

dotPeek funciona! Nota: Las últimas compilaciones se pueden encontrar en: C: \ Users \ # \ AppData \ Local \ Temp \ Archivos ASP.NET temporales \ vs \ ... (y así sucesivamente) – HerGiz

+0

Me encontré con el mismo problema y para resolverlo I intentado dotpeek por jetbrains y ilspy http://ilspy.net/ ambos funcionan bien, pero lo mejor es ilspy ya que descompila y genera un código bastante bueno en comparación con dotpeek. –

3

también sólo quiero añadir una cosa más ... En mi caso tuve una página aspx con sus respectivos .cs y designer.cs El archivo .cs se corrompe y lo hice construir el proyecto, con el diseñador .cs el proyecto obtuvo build exitosamente y el dll fue reemplazado. Y cuando traté de recuperar usando un reflector todo estaba en un estado sin retorno. :(

Así que no se genere el proyecto si usted ve cualquier archivo se corrompe.

5

Algo que funcionó para mí fue de respaldo. Por cierto yo estaba tratando de recuperar un archivo VS2013 en una máquina Windows 8 .

tratar de comprobar por debajo de ubicación en su sistema

C:. \ Users \ nombre de usuario \ Mis documentos \ Visual Studio \ archivos de seguridad \ ProjectFolder

he encontrado un archivo original con el original de una fecha. filename.cs nombre y a recover-date.filename.cs archivos.

El original era el que se necesitaba. Se eliminó el uno en el proyecto, se agregó el archivo original y se lo cambió por el nombre a archivo.cs. Intentó construir y depurar y dio los resultados esperados.

Cuestiones relacionadas