gaoxiang

专注于.NET技术

博客园 首页 新随笔 联系 订阅 管理
 对于“依赖注入”,我最常用的是“设值注入法”(即通过Setter属性注入),对于需要注入很多依赖的类来说,一个一个的手动写属性的繁琐已经让我难以忍受了。于是我写了一个VS2003的小插件,你只需要输入类型和属性名,它就能在编辑器指定的地方自动生成属性,并且一次可生成多个属性。(我试用了VS2005下的属性自动生成功能,感觉也不是那么好用:))
    这个小插件安装后,会在VS2003的右键快捷菜单的顶部出现一个菜单项“PropertyCreatorAddin”:


    点击该菜单,会出现如下窗口:


比如你在“属性字符串”的TextBox中输入字符串“ int ConnectionCount ,string ServerName”,点击“生成”按钮,则编辑器中会生成如下代码
        #region ConnectionCount
        private int connectionCount = 0 ; 
        public int ConnectionCount
        {
            get
            {
                return this.connectionCount ;
            }
            set
            {
                this.connectionCount = value ;
            }
        }
        #endregion
        
        #region ServerName
        private string serverName = "" ; 
        public string ServerName
        {
            get
            {
                return this.serverName ;
            }
            set
            {
                this.serverName = value ;
            }
        }
        #endregion
    
    输入属性字符串需要注意:
(1)类型和属性名之间用一个空格隔开
(2)如果需要生成多个属性,则每个之间用英文逗号隔开(如示例中一样)。
(3)插件界面上的两个checkBox用于控制“只读”属性和“只写”属性。

下载PropertyCreatorAddin安装程序

Feedback

# re: VS小插件--属性自动生成器  回复   

2006-03-24 16:19 by SimpleCode
东西虽小,不过真好,下来用用。
另外能不能公布源码?我想学习怎么写AddIn

# re: VS小插件--属性自动生成器  回复   

2006-03-24 16:19 by Cure
好东西,早就想有这样一个东西了。

# re: VS小插件--属性自动生成器  回复   

2006-03-24 16:21 by idior
相较于这个工具,我对如何制作它更感兴趣。
楼主何不授人与渔 :)

另外提个建议 属性的类型最好通过选择的形式设定。而且最好能支持自定义类型的选择。

# re: VS小插件--属性自动生成器  回复   

2006-03-24 16:33 by 风一样的狂徒11
private int connectionCount = 0 ;
public int ConnectionCount
{
get
{
return this.connectionCount ;
}
set
{
this.connectionCount = value ;
}
}
通过大小写来区分成员变量,好吗?这样VB.net无法调用
不如 :
private string m_AAA;

public string AAA
{
get;set............;
}

# re: VS小插件--属性自动生成器  回复   

2006-03-24 16:56 by henry
对写插件感兴趣,楼有相关的资料能否发出来或写个制作过程?
因为平常都是用XDE的,所以对这个功能就....

# re: VS小插件--属性自动生成器  回复   

2006-03-24 17:04 by laifangsong
不错。

# re: VS小插件--属性自动生成器  回复   

2006-03-24 17:21 by yjcmy
很好用呢,不错,临时+属性是很烦的。

建议:
如果选中如下区域点右键
int a;
string a;
MyType mytype;
自动生成属性。
#region 也弄成可选的。

# re: VS小插件--属性自动生成器  回复   

2006-03-24 17:57 by wwwww
vs2003 vb下不能用啊

# re: VS小插件--属性自动生成器  回复   

2006-03-25 09:11 by exhjw
#region A
private string a = "" ;
public string A
{
get
{
return this.a ;
}
set
{
this.a = value ;
}
}
#endregion

建议在a前加上m_

# re: VS小插件--属性自动生成器  回复   

2006-03-25 10:27 by 一滴水
希望搂主可以发一份开发add-in 的资料
email:yidishui1570@gmail.com

# re: VS小插件--属性自动生成器  回复   

2006-03-25 17:35 by 无处坏
希望搂主可以发一份开发add-in 的资料
email:wqjch@163.com

# re: VS小插件--属性自动生成器  回复   

2006-03-25 21:18 by birdshome
Macro版Property Generator :)
http://birdshome.cnblogs.com/archive/2006/03/25/PropertyGenerator.html

# re: VS小插件--属性自动生成器  回复   

2006-03-27 13:42 by yukai zhao
授人于渔,谢谢
yukaizhao@gmail.com

# re: VS小插件--属性自动生成器  回复   

2006-03-27 14:06 by zhuweisky
各位朋友,关于如何开发VS插件,摩诘兄已经在他的blog上给出了详细的讲述,所以想学习开发VS插件的朋友请直接从他的blog上学习。我就不重复发明轮子了:)
摩诘的blog:http://dragon.cnblogs.com/
posted on 2006-05-18 14:13  S孤单一吻S  阅读(332)  评论(0)    收藏  举报