Skip to content

JaneySprings/DotRush

Repository files navigation

Overview

C# Development Environment for Visual Studio Code

 DotRush is a C# Language Server, designed to unlock various IDE capabilities. DotRush helps you organize multiple projects and includes features for code editing, refactoring and error detection. Even in the most extensive projects, DotRush is a resource-friendly companion, ensuring you stay productive and focused.


Features

Navigation & Refactoring

 DotRush simplifies code navigation and refactoring with these quick actions:

  • Go To Definition
    Find all the symbol definitions in your project.

  • Go To Type Definition
    Find all the symbol type definitions in your project.

  • Go To Implementation
    Find all implementations of your virtual method or interface.

  • Go To References
    Find all usages of the symbol in your project.

  • Renaming
    Rename a class or variable by placing a cursor on it and pressing F2 (by default).

  • Code Formatting
    You can format the entire document or selected code blocs.

DotRush (VSCode) vs C# Dev Kit

 DotRush works indepdendanly of C# Dev Kit and may conflict in certain usage scenarios. That's why you need to disable C# Dev Kit to use DotRush. Here are a few advantigures offered by DotRush:

  • Efficient Resource Utilization. Experience significantly reduced resource consumption, with minimal CPU and memory usage even in large projects.
  • Enhanced Multi-Targeting Support. See the following sections for additional information: IntelliSense in Multi-Target Projects, Cross-Platform Error Detection.

 It's essential to note some limitations when compared to the C# Dev Kit:

  • Blazor projects are not supported.
  • Built-in .NET Core debugger is not supporeted, but I'm working on it.

IntelliSense in Multi-Target Projects

 DotRush offers IntelliSense for multiple Target Frameworks. For example, when you're working on a cross-platform application and your current target framework is Android, DotRush provides IntelliSense capabilities for iOS, too.

image

Cross-Platform Error Detection

 DotRush highlights errors and displays descriptions in all Target Frameworks used in your project.

image

Multiple Project Management

 Empowering you with Code Workspaces DotRush lets you effortlessly combine multiple projects and apply different settings to them. DotRush seamlessly activates all features when you add a new folder to your workspace. Note that .sln files are not supported.

image

Quick Fixes

 Activate error quick fixes by hovering over an error or clicking on the lamp icon:

image

Code Decompiling

 When navigating to a class not included in your project, DotRush will decompile it with ICSharpCode Decompiler, allowing you to explore external libraries.

image