我正在寻找一种在编写代码时加快可重复任务的方法。我有ReSharper,我想定制可以满足我的需求。

我有两个相同类型的对象。我想将一个对象的所有公共(public)属性复制到另一对象。我希望工具(在这种情况下为ReSharper)能够为我生成代码。我将告诉它第一个对象和第二个对象的名称。我希望它找到第一个对象的所有公共(public)属性,并将值复制到第二个对象。

这是我希望通过ReSharper之类的工具生成的代码类型:

foo.Name = moo.Name;
foo.Age = moo.Age;
foo.City = moo.City;

自动执行此简单的代码(从右向左复制值)可以节省大量时间,我认为ReSharper可以做到。但是,我没有在搜索中看到任何弹出窗口。

我不是在寻找CodeSmith代码生成技术或T4模板,因为我只希望它在类内部生成这些特定行,而不是生成整个类或单独的文件。

有谁知道一种按几次键的方法,在上面输入“foo”和“moo”对象名称,并让该工具从代码的右行到左行生成这些副本?

更新:

我已经找到了一些有关构建ReSharper扩展的文档,并且可以通过该路径来实现,但是看起来确实很复杂。

http://www.jetbrains.net/confluence/display/ReSharper/PowerToys+Pack+3.0+User+Guide

除非别人已经写过,否则这开始看起来像一个周末的挑战。

最佳答案

我不相信Resharper可以做到,但是开源AutoMapper可以。 AutoMapper的新手?查看Getting Started页面。

关于c# - ReSharper可以生成将属性从一个对象复制到另一个对象的代码吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1228194/

10-11 22:50
查看更多