ReSharper 2020.2 Help

Move Type to Another File refactoring

ReSharper | Refactor | 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 remove the redundant part of the parent class.

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 Control+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 filename in the New file name field. 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.NETLanguage: C++Language: HTMLLanguage: ASP.NETLanguage: RazorLanguage: JavaScriptLanguage: TypeScriptLanguage: CSSLanguage: XMLLanguage: XAMLLanguage: ResxLanguage: Build ScriptsLanguage: ProtobufLanguage: JSON
Feature is available in C#Feature is available in Visual Basic .NETFeature is not available in C++Feature is available in HTMLFeature is not available in ASP.NETFeature is not available in RazorFeature is not available in JavaScriptFeature is available in TypeScriptFeature is available in CSSFeature is not available in XMLFeature is not available in XAMLFeature is not available in Resource filesFeature is not available in build script filesFeature is not available in ProtobufFeature is not available in JSON

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: 03 September 2020