首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

Visual Studio 斷電導致原始碼檔案損毀為 0KB 的修復經驗分享

     編輯:程式設計綜合問答

現象

突然斷電後,C# 專案中部分 .cs 檔案大小變 0KB,Designer.cs 正常,.resx、.ico 也損毀。重寫 .cs 後設計器報錯「缺少根元素」。

可能原因

  • VS 在背景自動儲存時斷電,導致檔案寫入未完成,檔案系統標記大小為 0。
  • .suo(用戶選項檔)可能同時損毀,干擾設計器載入。

修復步驟

  1. 版控回滾:若使用 Git/SVN/TFS,直接 git checkout -- *.cs 還原最新提交版本,最快最穩。
  2. 無版控時:
    • 關閉 VS,刪除方案目錄下 .vs、*.suo 檔案。
    • 重新開啟專案,若 .cs 仍為 0KB,需手動重建:
    • 新增同名類別檔,從 Designer.cs 複製 InitializeComponent 呼叫與控制項宣告。
    • 逐一補上事件處理方法(雙擊設計器對應控制項自動生成)。
  3. 資源檔修復:.resx 為 XML 格式,若損毀可刪除並讓設計器重新生成(右鍵 Form → "Run Custom Tool")。

預防建議

  • 啟用 VS「自動儲存」間隔縮短(Tools → Options → Environment → Documents → Auto-save every 1 min)。
  • 使用 UPS(不斷電系統)保護開發機。
  • 养成 Ctrl+Shift+S(儲存全部)習慣,並頻繁 git commit。

同類經驗

VS2013 C++ Win32 專案同樣遇過,微軟 IDE 在斷電保護上確有改進空間。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved