19

Tôi có một số giao diện và lớp học mà tôi có trong dự án lớp kinh doanh của mình và tôi muốn chuyển chúng vào một dự án hoàn toàn mới. Tôi đang sử dụng Resharper 4.5.2. Có cách nào tôi có thể làm điều đó một cách dễ dàng và không đau đớn? Tôi biết về chức năng loại di chuyển, nhưng có vẻ như nó sẽ chỉ làm điều đó trong cùng một dự án.Di chuyển loại từ dự án này sang dự án khác thông qua Resharper?

Bất kỳ trợ giúp nào sẽ được đánh giá cao

Cảm ơn!

Trả lời

30

Bạn chỉ có thể kéo và thả tệp trong cửa sổ giải pháp, sau đó sử dụng Resharper để tự động thêm tham chiếu và sửa bất kỳ vấn đề không gian tên nào.

Tôi đã thực hiện nó - nó không phải là 1 hoạt động như hoạt động loại di chuyển, nhưng nó vẫn còn rất nhanh.


FYI - Resharper 5.0 Beta 2 hiện nay hỗ trợ này, trực tiếp, bằng cách click chuột vào một tập tin trong cửa sổ giải pháp, và chọn Refactor-> Move.

+1

Khi tôi làm điều đó, nó chỉ đơn giản là sao chép tệp từ dự án này sang dự án khác. Đó có phải là những gì xảy ra với bạn không? –

+6

@Dan Appleyard: Giữ "shift" khi bạn kéo và nó sẽ di chuyển tệp thay vì sao chép tệp. –

+0

Điều đó có hiệu quả với tôi. Cảm ơn! –

2

Để xây dựng trên câu trả lời được chấp nhận & nhận xét ở đây, có một cách đơn giản hơn.

Giống như @Dan Appleyard đã nói, bạn có thể sử dụng SHIFT + Kéo để "Di chuyển" tệp thay vì "Sao chép", điều này cũng sẽ kích hoạt (trong ReSharper 5+) dự án mới sẽ được thêm vào tham chiếu khi cần.

Khi bạn đã thực hiện việc này, hãy chuyển đến thư mục tệp đã di chuyển và chọn Right Click -> Refactor -> Adjust Namespaces. Điều này sẽ sửa không gian tên các tệp đang sống để khớp với cấu trúc thư mục dự án/thư mục và sẽ đặt tất cả các yêu cầu using chỉ thị vào tất cả các tệp trong toàn bộ giải pháp.

4

Trong phiên bản hiện tại của ReSharper, các Move to Folder refactoring xử lý tốt này:

  1. Chọn các tập tin trong Solution Explorer hoặc loại trong trình soạn thảo mã.
  2. Mở menu ngữ cảnh (nhấp chuột phải hoặc nhấn Trình đơn ngữ cảnh trên bàn phím của bạn).
  3. Chọn Refactor.
  4. Chọn Di chuyển.

Nó không thuận tiện như kéo-thả, nhưng nó vẫn làm mọi thứ trong một thao tác trên nhiều tệp.

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