2013-10-24 40 views
5

我想找到一种方法来告诉视觉工作室让我的属性保持与我的类内联的属性。一个例子。如何保持我的属性与属性一致?

[DataMember] int ID { get; set; } 
[DataMember] public int DivisionID { get; set; } 
[DataMember] public string Name { get; set; } 
[DataMember] public int MyID { get; set; } 
[DataMember] public string ContactName { get; set; } 

但是,如果我手动修改类并点击保存它自动调整文件看起来像这样。

[DataMember] 
int ID { get; set; } 
[DataMember] 
public int DivisionID { get; set; } 
[DataMember] 
public string Name { get; set; } 
[DataMember] 
public int MyID { get; set; } 
[DataMember] 
public string ContactName { get; set; } 

编辑

只是让大家都知道。这不是一个最佳实践问题。我只是想知道编辑是否具备这种能力。这些代码文件是由我们刚刚完成的代码生成器自动生成的。这更多的是一个令人烦恼的事情不断发生,我们想阻止它这样做。我知道修改编辑器有几个选项,但不知道是否有人知道这个问题的一个很好的解决方法,或者是否存在。

我真的很感谢任何人对我们问题的洞察力。

+0

当你有多个属性会发生什么? '[DataMember] [必需] [XmlIgnore] [已弃用] int ID {get; set;}'这就是你想要的吗?对我来说,这是令人难以置信的混乱。 –

+0

好吧,它会是[DataParameter,DataMember] – meanbunny

+0

@DaveZych'[DataMember,Required,XmlIgnore,Deprecated] int ID {get;组; }'会更好,但是我仍然更喜欢将每个属性放在一个单独的行上。 –

回答

1

我想你可以通过以下方式解决这个问题:

工具 - >选项 - >文本编辑器 - > C# - >格式化

取消选中所有相关者(如格式完成了块})

显然,这将影响所有自动块格式编写代码时。

另一个解决方案是转向VS2012,在我看来,这并没有做到这一点(仍然是粘贴,但这并不突出)。

+1

值得注意的是Visual Studio不会自动重新格式化您的代码,除非您提出要求,所以手动格式化仍然是可能的。 –

2

对不起,答案是“Visual Studio”没有这个选项。这不是理想的答案,但有时答案是没有新代码就无法完成。

如果你去这里。 。 。

工具|选项|文本编辑器| C#|格式化

。 。 。那么是的,你可以完全关闭autoformating,这对我来说不是一个解决方案。

但是,如果你去。 。 。

工具|选项|文本编辑器| C#|格式化|新行

。 。 。在属性后面没有选项或设置新行。该选项或设置需要存在。

所以这个功能必须添加到Visual Studio。我不知道它是否可以由除微软之外的任何人添加,所以唯一的解决方案是提交和增强请求。

+0

Autoformatting由配置文件驱动。我不相信唯一的解决办法就是问全能的微软。 –

+0

我想我也能找到一个配置文件。我很努力地搜索。我甚至拿出ProcMon来查看配置文件是否在我改变设置时被触摸。我会很乐意被证明是错误的! – Rhyous