Rider EAP 19: new .NET Core, LESS, Sass, and more

Here’s a monthly dose of good news: you can now download a new Rider EAP build.

JetBrains Rider EAP 19

Below is a quick summary of what’s inside Rider EAP 19. Note that the build contains major improvements that we’re hoping to describe in more detail next week.

Continue reading

Posted in How-To's | Tagged , , , , , , | 23 Comments

Language injections in Rider

Just like ReSharper, Rider supports language injections. In almost every project there are cases where we want to (or have to) embed a piece of code in a string literal. For example, pieces of HTML inside a JavaScript string, or a quick JSON fragment inside a C# string. Let’s see how they work.

Note: In this blog post, we’ll look at some of the basics of language injections. They work similar in both Rider and ReSharper – check this deep-dive post on language injections in ReSharper to learn more.

Mark as injected language

Like all good things in Rider, Alt+Enter is where it starts. In the editor, we can place the caret on a string literal and mark it as an injected language.

Inject CSS into C# string literal

Whenever a string contains C#, regular expressions, CSS, HTML, JSON or JavaScript, Rider can treat it as a code fragment, providing highlighting and code analysis for them. Even quick-fixes are available, for example for selecting a specific CSS color or fixing a JavaScript comparison:

JavaScript language injection - quick-fix

Continue reading

Posted in How-To's | Tagged , , , , , , , | 3 Comments

ReSharper Ultimate 2017.1 EAP update: Visual Studio 2017 RTM and more

We are getting closer to the release date and working hard towards providing the finest coding experience to Visual Studio 2017 RTM users. If you are already using the latest release of Visual Studio, make sure to download ReSharper Ultimate 2017.1 EAP 5 to get the best support for its new features.

We have introduced quite a lot of improvements during this EAP, and today we’ll take a look at updates in our two latest EAP builds.

Continue reading

Posted in How-To's | Tagged , , , , , , , , , | 18 Comments

Smart Paste in Rider

Today, I’d like to introduce you to Smart Paste, a “little big feature” in Rider (as well as in ReSharper). It ensures the right escaping in string literals that are copy/pasted. For example, consider pasting The "Name" field is required into var error = "". We would paste the string, then move to both " characters and escape them with \", making sure there are no syntax errors. Rider helps us out here with a quick-fix that can escape illegal characters for us!
Using Smart Paste to escape a string

Smart paste works in C#, VB.NET, JavaScript, XML, XAML and HTML files, and suggests escaping values upon paste.
Continue reading

Posted in How-To's | Tagged , , , , , , , | 6 Comments

Using dotPeek to figure out why IIS crashed

Here’s a story on how I once used dotPeek to provide debugger symbols and (decompiled) source code for a crashed application for which we had nothing but the application assemblies available. Namespaces have been altered to protect the innocent.
dotPeek decompiler

Nothing better than a good cup of coffee in the morning! Opening up the issue tracker, “the folks from IT” logged an issue about an application server crashing over night. They automatically captured a crash dump of the IIS worker process and attached it to the issue – this should help in diagnosing the root cause of that crash. One more coffee refill, and then let’s dive in!

Continue reading

Posted in How-To's | Tagged , , , | 5 Comments

Rider EAP update: Version control and database editor improvements

We already mentioned numerous times that Rider is built on top of ReSharper, analyzing our code in the background, and the IntelliJ platform, providing the front end and editor capabilities for our cross-platform IDE for .NET.

Doing so lets us ship the best of both worlds: both products have been evolving over years, and Rider profits. So when IntelliJ IDEA 2016.3 was released, we merged all of the improvements to language-independent features such as version control and the database editor into Rider. Let’s go over some of these improvements!

Continue reading

Posted in How-To's | Tagged , , , | 10 Comments

Rider EAP update: File watchers

One cool thing about Rider is that we can tap into the rich plugin ecosystem the IntelliJ platform brings. There are community plugins, and several JetBrains plugins as well. One of those was recently made available to work with Rider EAP: the File Watchers plugin, which executes tasks on file modifications.

But… why would we want this? One example could be “watching” TypeScript files for modifications and then transpile TypeScript to JavaScript automatically. Or watch CSS, LESS or JavaScript and bundle & minify them whenever we make a change. Let’s look at an example.

Continue reading

Posted in How-To's | Tagged , , , , , | 1 Comment

ReSharper Ultimate 2017.1 EAP: what’s new in builds 2 and 3

We’ve just released the third Early Access Preview build of ReSharper Ultimate 2017.1. Let’s take a look at the recent changes in this and EAP 2.

TypeScript and JavaScript

This build introduces a number of performance fixes for TypeScript and JavaScript, as our processing of file dependencies has been rewritten and optimised, wildcards in tsconfig are handled better, and the Rename refactoring for local symbols is also faster, with the ability to disable search for dynamic usage of TypeScript symbols in JavaScript files via a checkbox in the Rename dialog.

Find possible dynamic usages checkbox in rename dialog
Continue reading

Posted in How-To's | Tagged , , , , , , , | 8 Comments

Rider EAP update: Working with NuGet

There’s no way around it: .NET development today and in the future means working with NuGet for bringing dependencies into our projects. Rider lets us install, update and remove NuGet packages, and automatically restores missing packages when a project is opened. In this blog post, let’s look at what changed in our NuGet tooling since we launched public Rider EAP (Early Access Program).

Performance updates

When searching a NuGet package source, Rider caches and updates search results in the background. Since our first public EAP, we worked on zero-latency typing in the search box which makes searching for packages very snappy.

Rider searches NuGet packages in the background

Continue reading

Posted in How-To's | Tagged , , | 3 Comments

Rider EAP 18: CoreCLR debugging is back (on Windows)

Good news everyone! A fresh Rider Early Access Program (EAP) build is available for download!

Rider splash screen

Rider EAP 18 brings back CoreCLR debugging on Windows (Linux and Mac OS X will come later), the Invalid volume separator char solution load error has been fixed, there’s a UI to add COM references and display them in the Solution Explorer, and assorted bug fixes. In other words: things you want! Check out the list of fixes in this build for full details.

Continue reading

Posted in How-To's | Tagged , , , | 22 Comments