5

unbind của Visual Studio | hoạt động liên kết thực hiện với các dự án trong một giải pháp .suo?Dự án VS ràng buộc làm gì?

Microsoft cung cấp hướng dẫn trên How to: Bind or Unbind a Solution or Project, điều này xảy ra để khắc phục "Lỗi không xác định" đáng sợ xảy ra khi mở giải pháp. Bài đăng MSDN forum này có người dùng cho biết họ không gắn kết và sau đó buộc lại các dự án của họ để giải quyết vấn đề đó.

Khi tôi gặp phải sự cố "Lỗi không xác định", tôi đã thực hiện một số thao tác bổ sung và nhận thấy rằng giải pháp .suo là ứng cử viên duy nhất đã thay đổi sau khi tôi giải quyết vấn đề.

Tôi đọc này answer to an SO question about .suo files đang được sử dụng một cách hiệu quả và đã xảy ra để có thể tạo lại vấn đề UE thông qua không gian làm việc cũ mà tôi đã đặt xung quanh. Vì vậy, tôi đã tiếp tục và xóa giải pháp .suo và mở giải pháp giải pháp .sln. Một cách kỳ diệu, vấn đề UE của tôi đã biến mất với không gian làm việc đó.

Điều đó đã khiến tôi kết thúc unbind | ràng buộc có một số loại hiệu ứng trên tập tin .suo, nhưng vì các tập tin nhị phân, cấu trúc độc quyền tôi đã không thể xác định những gì đang xảy ra.

Câu hỏi của tôi:
1. Vì vậy, chính xác những gì không có của Visual Studio | hoạt động liên kết thực hiện với các dự án trong một giải pháp .suo?
2. Ai có thể phỏng đoán nguyên nhân gây ra những lỗi "Lỗi không xác định" này bây giờ tôi đã tìm thấy liên kết đến tệp .suo không?


Chú thích 1: MSDN article giải thích một chút về các tệp .suo, nhưng không thực sự đi sâu vào chi tiết.

Footnote 2: "Unspecified Error" trên khai mạc dự án/giải pháp dường như là khá bête noire bằng chứng là here, tìm kiếm khác nhau, và điều này old MS KB

+0

Bạn đã cài đặt plugin nào? –

+0

@EdwardThomson - Silverlight, một vài API tiện ích của bên thứ ba và các công cụ điện. Bạn không chắc chắn nó liên quan đến các plugin vì chúng tôi có các giải pháp khác hiếm khi/nếu gặp vấn đề tương tự. Thông qua các bản ghi, tôi đã theo dõi các UE đang leo lên và chúng sẽ xảy ra bên ngoài khi các plugin đang được tải. – GlenH7

Trả lời

2

Chắc chắn, các tập tin .suo là nơi Visual Studio cửa hàng nhà nước của IDE. Vì vậy, khi bạn mở một giải pháp một lần nữa sau đó, mọi thứ sẽ khôi phục lại cách bạn rời khỏi nó. Hiệu ứng rõ ràng nhất có thể nhìn thấy là các cửa sổ khôi phục ở vị trí và kích thước ban đầu của chúng. Và có, sự ràng buộc của giải pháp cho máy chủ kiểm soát nguồn cụ thể nơi bạn muốn thay đổi được kiểm tra trong cũng có thể được lưu trữ ở đó là tốt, nó là nơi hợp lý cho nó.

"Lỗi không xác định" là mã lỗi COM rất chung chung có tên E_FAIL. Visual Studio sử dụng rất nhiều mã COM, hệ thống bổ trợ hoàn toàn dựa trên COM. Đó là một lỗi tệ hại bởi vì nó không có nghĩa gì hơn "nó không hoạt động, không biết tại sao". Tương tự như trả về false từ một hàm. Có một lập trình viên tại Microsoft ở đâu đó có thể đã làm tốt hơn việc báo cáo vấn đề. Có lẽ đó không phải là dễ dàng như vậy.

2

VS cửa hàng ràng buộc dự án mà các dự án được quản lý bằng kiểm soát nguồn. Nó được lưu trong tệp .SLN.

Thật không may, định dạng lưu trữ rất khó cho các hệ thống kiểm soát nguồn hợp nhất. Vì vậy, các ràng buộc thường bị hỏng, dẫn đến sai lầm "Dự án đã được thêm vào kiểm soát nguồn" tin nhắn khi tải giải pháp. Thủ tục sửa lỗi này là xóa toàn bộ phần đó khỏi.tập tin sln, mở trong VS, và sau đó liên kết lại giải pháp, phần này sẽ tạo phần chính xác.

BTW, định dạng tệp toàn bộ giải pháp khá khủng khiếp khi hợp nhất. Nó có mùi giống như VS6, và phần điều khiển nguồn có mùi như SourceSafe. Tôi muốn họ sẽ chuyển sang một số định dạng dựa trên MSBuild, giống như họ đã làm với (gần như tất cả) các tệp dự án.

+1

Bạn có thể xem xét xóa các tệp '.suo' cũng như câu trả lời này http://stackoverflow.com/questions/3299660/vs-corrupted-sln-file. – Pio