2010-03-29 35 views
6

Khi tôi bắt đầu đặt nhiều dấu vết hơn trong mã của mình, tôi nhận ra rằng nó làm tăng thêm sự lộn xộn. Tôi biết Visual Studio cho phép bạn ẩn và tiết lộ mã, tuy nhiên, tôi muốn để có thể nhóm mã vào "truy tìm" mã và sau đó ẩn nó và tiết lộ tại sẽ như tôi đang đọc mã. Tôi cho rằng nó có thể làm điều này cho mỗi tập tin hoặc mỗi lớp hoặc cho mỗi chức năng.Làm cách nào để ẩn mã theo dõi trong Visual Studio IDE C#?

Có cách nào để thực hiện việc này không? Các anh làm gì?

Thêm một số làm rõ

Các hide tính năng hiện tại loại cho phép bạn làm điều này trừ khi mã được ẩn, bạn không thể nói nếu tracing của nó hay không. Bạn cũng không thể nói "ẩn tất cả mã theo dõi" và "tiết lộ tất cả mã theo dõi", điều này rất hữu ích khi đọc một hàm tùy thuộc vào những gì bạn đang cố gắng thực hiện.

Trả lời

0

Bạn đã xem xét #region chưa?

int x = 3; 
    x++; 

#region Trace 
    // ... 
#endregion 

    x += 2; 

VS sẽ tự động cho phép bạn mở rộng hoặc ẩn khu vực.

+0

Làm cách nào để ẩn tất cả các vùng theo dõi trong một lớp hoặc phương pháp? – Mark

+0

Xây dựng một macro VS để ẩn/hiển thị các vùng phù hợp sẽ làm điều đó – CResults

+0

Mặc dù tôi không thích nó, tôi đã kết thúc bằng cách sử dụng các vùng để tôi đánh dấu đây là câu trả lời. – Mark

1

Tôi khuyên bạn không nên che giấu. Nếu có mã soạn sẵn đang đến giai đoạn mà nó cần phải được ẩn đi để bạn có thể thấy mã "thực", thì tốt hơn là tìm cách tốt hơn để tách biệt các mối quan tâm.

Điều này thường đúng với việc truy tìm/gỡ lỗi mã. Một cái gì đó tôi đã nhìn gần đây là sử dụng một khuôn khổ AOP để tiêm các câu lệnh debug vào các lớp khác. Có một cái nhìn tại PostSharp, Các example chứng tỏ làm thế nào để làm chính xác điều đó.

+0

AOP có trở thành một công nghệ được sử dụng rộng rãi đủ để trở nên sẵn có và đáng tin cậy không? Có rất nhiều văn bản về nó, nhưng ví dụ nó không được xây dựng trong khuôn khổ .NET. Tôi đoán nó chưa đủ trưởng thành. Ngoài ra, về phương pháp theo dõi phương pháp (nghĩa là không chỉ lối vào phương thức và phương thức thoát)? – Mark

+0

Có một số thư viện cho phép bạn thực hiện việc này cho .NET. Nó không đóng vai trò như một phần của khuôn khổ, nhưng đó không nhất thiết phải là một lý do để không sử dụng nó. Tôi không nghĩ rằng AOP là một viên đạn bạc cho loại điều này, nhưng tôi nghĩ rằng chỉ "ẩn" mã xấu xí chắc chắn là cách tiếp cận sai lầm. – TarkaDaal

+0

Đối với trong phương pháp truy tìm, tôi cho rằng nếu các phương pháp của bạn đủ dài để yêu cầu điều đó, chúng sẽ quá dài. – TarkaDaal

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