2011-10-01 58 views
8

Tôi đã làm việc trên một lớp học trong studio hình ảnh năm 2010 khi đột nhiên máy tính của tôi gặp sự cố. sau khi tôi khởi động lại máy tính. Tôi bắt đầu Visual studio và tôi thấy rằng lớp học hoàn toàn trống rỗng. nó chứa hơn 1000 dòng mã trước lớp học. là có anyway tôi có thể khôi phục tập tin đó?Khôi phục tệp lớp .CS sau khi gặp sự cố

Trợ giúp xin vui lòng bởi vì tôi không có một bản sao của nó (Ngu ngốc của tôi)

+5

@Oded, tôi nghĩ chúng tôi có thể phỏng đoán từ 'Tôi không có một bản sao khác' mà kiểm soát nguồn không liên quan. –

+0

Xin lỗi, tôi không biết ý bạn là gì khi kiểm soát nguồn. Tôi đã làm việc trên một ứng dụng ASP.NET C# và lớp bị mất chứa rất nhiều phương pháp mà tôi đang sử dụng trong ứng dụng – Youssef

Trả lời

18

Nếu bạn không thể tìm thấy các tập tin mã nguồn, hãy thử sử dụng Reflector để dịch ngược dll thời gian gần đây được xây dựng hầu hết các bạn đã có chứa lớp đó. Nó sẽ không cung cấp cho bạn nguồn hoàn chỉnh của bạn, nhưng ít nhất sẽ cung cấp cho bạn một cái gì đó để bắt đầu.

Lưu ý: Trình phản xạ không còn miễn phí; nếu điều đó quan trọng, hãy thử dotPeek từ JetBrains thay thế.

Ngoài ra, hãy xem xét sử dụng hệ thống source code control. Điều này sẽ cho phép bạn 'cam kết' các phiên bản mã của bạn vào một kho lưu trữ, vì vậy bạn sẽ có một bản sao trong trường hợp một cái gì đó như thế này xảy ra trong tương lai.

Subversion, GitMercurial là các thẻ phổ biến; Theo tôi, Subversion sẽ là cách dễ nhất để bắt đầu, đặc biệt là với TortoiseSVN (tích hợp hệ điều hành) và AnkhSVN (tích hợp Visual Studio). Nếu bạn không muốn lo lắng về việc thiết lập kho lưu trữ/máy chủ, hãy xem xét giải pháp lưu trữ, như Beanstalk, cung cấp Subversion và Git và cho phép bạn dùng thử với một tài khoản giới hạn miễn phí.

Chúc may mắn - Tôi hy vọng bạn có thể khôi phục nguồn của mình!

+0

.NET Reflector có bản dùng thử miễn phí 14 ngày, hoàn hảo cho việc khôi phục các tệp bị hỏng. Dưới đây là một số điều bạn có thể mong đợi: Tất cả các phương thức sắp xếp lại theo thứ tự abc; hầu hết các tên biến thay thế bằng các generic như 'list2', 'node2', v.v. nhiều vòng loại thừa được thêm vào mã; tất cả các bình luận bị mất; một số mã bị phân mảnh.Nhưng nếu bạn sẽ phải bắt đầu lại với các tập tin, tùy chọn này là tốt hơn nhiều. Giống như Rizwan được đề cập dưới đây, ** KHÔNG REBUILD ** dự án nếu bạn muốn giải pháp này hoạt động. – user3738893

+0

dotPeek hoạt động! Lưu ý: Có thể tìm thấy vài bản mới nhất tại: C: \ Users \ # \ AppData \ Local \ Temp \ Temporary ASP.NET Files \ vs \ ... (và vân vân) – HerGiz

+0

Tôi gặp vấn đề tương tự và giải quyết nó cố gắng dotpeek bởi jetbrains và ilspy http://ilspy.net/ cả hai đang làm việc tốt nhưng tốt nhất là ilspy như nó decompiles và tạo ra mã khá tốt so với dotpeek. –

3

Cũng chỉ muốn thêm một điều nữa ... Trong trường hợp của tôi, tôi đã có trang aspx với các tệp .cs và designer.cs tương ứng của chúng. Tệp .cs bị hỏng và tôi đã xây dựng dự án với nhà thiết kế .cs dự án đã xây dựng thành công và dll đã được thay thế. Và khi tôi cố gắng phục hồi bằng cách sử dụng tất cả mọi thứ phản xạ đã ở trong trạng thái không trở lại. :(

Vì vậy, không xây dựng dự án nếu bạn thấy bất kỳ tập tin bị hỏng.

5

Something mà làm việc đối với tôi là back-up. BTW Tôi đã cố gắng để phục hồi một tập tin VS2013 trên một máy tính Windows 8 .

hãy thử để kiểm tra bên dưới vị trí trong hệ thống của bạn

C:. \ Users \ username \ My Documents \ Visual Studio \ backup Files \ ProjectFolder

tôi tìm thấy một file nguyên gốc ban đầu được cập nhật. tên filename.cs và tệp được khôi phục-date.filename.cs.

Bản gốc là thứ cần thiết. Đã xóa một trong dự án, thêm tệp gốc và đổi tên tệp thành tệp.cs. Đã cố gắng xây dựng và gỡ lỗi và nó đã cho kết quả mong đợi.

Các vấn đề liên quan