ReSharper 2017.2 Help

Move Type to Another File refactoring

ReSharper | Refactor | Move…
F6
ReSharper_Move

This refactoring helps you move the selected type from the current file to any existing file or to a new file. If you are moving to a new file, the new file is created automatically. If there are no more types in the current file, it can be removed. All necessary imports are moved with the type. All imports that are no longer necessary are removed from the original file.

If you invoke this refactoring on a nested type, ReSharper will make the parent class partial, create a new file for the new part of the partial class, and move the selected type there. If necessary, you can then use the Move Type to Outer Scope refactoring to make the type non-nested and simply remove the redundant part of the parent class.

To move a type to another file

  1. Select a type in one of the following ways:
    • In the editor, set the caret at the name of a type.
    • Select a type in the Solution Explorer.
    • Select a type in the File Structure window.
    • Select a type in the Class View.
    • Select a type in the Object Browser.
    • Select a type in the type dependency diagram.
  2. Do one of the following:
    • Press F6 and then choose Move to Another File
    • Press Ctrl+Shift+R and then choose Move to Another File
    • Right-click and choose Refactor | Move to Another File in the context menu.
    • Choose ReSharper | Refactor | Move… in the main menu.
    The Move to Another File dialog will open.
  3. Type a file name in the New file name text box. You can specify the name for an existing file or a new one. In the latter case, the new file is created in the current project or folder.
  4. To apply the refactoring, click Next.
  5. If no conflicts are found, ReSharper performs the refactoring immediately. Otherwise, it prompts you to resolve conflicts.
ReSharper. Move to another file refactoring

This feature is supported in the following languages and technologies:

Language: C#
Language: VB.NET
Language: C++
Language: HTML
Language: ASP.NET
Language: Razor
Language: JavaScript
Language: TypeScript
Language: CSS
Language: XML
Language: XAML
Language: Resx
Language: Build Scripts
Language: Protobuf
Language: JSON
Feature is available Feature is available Feature is not available Feature is available Feature is not available Feature is not available Feature is not available Feature is available Feature is available Feature is not available Feature is not available Feature is not available Feature is not available Feature is not available Feature is not available

The instructions and examples given here address the use of the feature in C#. For details specific to other languages, see corresponding topics in the ReSharper by Language section.

Last modified: 10 November 2017

See Also

Procedures: