匿名类型到实际类重构

Sup*_*man 9 c# resharper anonymous-types

有没有一种简单的方法可以将匿名类型重构为类?我经常使用匿名类型对我的代码进行原型设计,然后必须返回并重新实现各种类,因为它们需要在本地范围之外使用.我正在使用resharper,并想知道是否有一个简单的方法来做到这一点.

Aak*_*shM 12

使用ReSharper 5.1 (我希望从版本4开始提供此功能,第一个支持C#3.0),光标位于此代码中new关闭之前的任何位置}:

        var v = new {Name = "Brian"};
Run Code Online (Sandbox Code Playgroud)

调出Refactor This...菜单(通常使用Ctrl+ Shift+ R),其中一个选项是Replace Anonymous Type With Named Class...,这会打开此对话框:

ReSharper使用命名类替换匿名类型对话框

  • 请注意,如果匿名类型具有也是匿名类型的属性,则必须首先将属性重构为命名类型. (5认同)