Visual Studio Features Built Instantly for CodeRush Developers

Mark Miller
07 April 2011

This week Rory and I continue our path-rip through the space time continuum by responding to customer requests yet again with mind-numbing development speed.

Earlier today this question appeared on twitter:

Request

Joe needs to convert a method call with positional arguments (the old way of passing arguments), into a named argument call. For example, he wants to change something like this:

RegisterDev("Mark", "Miller", 0);

 to this, in C#:

RegisterDev(firstName: "Mark", lastName: "Miller", id: 0);

Definitely a useful refactoring. Here’s how we built it:

  1. Create a new plug-in.
  2. Drop a RefactoringProvider on the design surface
  3. Fill out properties for the refactoring (Name, Description, AutoUndo)
  4. Handle three events (CheckAvailability, Apply, & PreparePreview)

Within an hour the feature was implemented and published (working in C# and VB), ready for consumption by CodeRush devs, prompting this response from Joe:

ResponseFromJoe

But this isn’t unique. Over the last two weeks we’ve released a number of new features, all built and delivered on the same day they were requested (most in under an hour from the original request)…

SurlyDev

pajacobs

Apeoholic

Need a feature? Just let us know. CodeRush can do anything, and if the feature isn’t there, we can likely add it easily. Tell us on Twitter what you want CodeRush to do (include the word “CodeRush” in your tweet), and lets see if we can keep up the pace. Smile

6 comment(s)
SimonMartin
SimonMartin

Awesome,

Will these features be included with the next release 'out of the box' or will we need to add them in each time?

8 April, 2011
Mark Miller (DevExpress)
Mark Miller (DevExpress)

Some of these features will be included with the next version, and some may be too edge case or perhaps not polished enough to make it in. Use Named Parameters is definitely planned to show up in 11.1.

8 April, 2011
Phillip -
Phillip -

This isn't working for me.  I've downloaded several community plugins that don't work.  I am a little surprised at this one not working because you just built it.

FYI... These haven't worked for me:

CR_ExtensionMethodsHelper

CR_NavigateToDefinition

DX_GenerateProxy

DX_InterfaceNav

Refactor_NamedParameters

8 April, 2011
Mark Miller (DevExpress)
Mark Miller (DevExpress)

Hi Phillip, I've asked Rory Becker to follow up with you. You can also send email to support@devexpress.com.

8 April, 2011
Rory Becker - DevExpress
Rory Becker - DevExpress

In what way do these "not work"? Are you getting any interface show up? If not, this is likely because the dlls were not built on your machine. As such your machine does not trust them.

They may need to be unblocked.

See if this tip from Travis Illig helps -> www.paraesthesia.com/.../unblocking-multiple-files-at-once.aspx

8 April, 2011
Phillip -
Phillip -

I unblocked them when I downloaded them.  I found that Refactor_NamedParameters works for me so that was my fault/operator error.

But the rest do not work as in the plugin manager shows that they are loaded but I can not get them to show up.  One of them I really want to use is the Jump To Implementor but I can not get them to show up on the Jump To context menu.

I will just email support...  No problem.

BTW: Now that I have this "Named Parameters" working I found that it wanted to use named parameters on a string.Format(...).

Thanks guys.

8 April, 2011

Please login or register to post comments.