Visual Studio 2010 - C#编辑器比VB.NET编辑器更笨重

问题描述:

传统上,我使用VB.NET,但已被要求在C#中编写最新的项目。Visual Studio 2010 - C#编辑器比VB.NET编辑器更笨重

这很好,因为我可以用任何一种语言工作,过去不得不经常将C#代码翻译成VB,而且我也没有任何疑虑。

我的问题是使用Visual Studio编辑器以及在编写VB.NET代码时,传统上为我自动执行的任务有多少在编写C#代码时丢失了,或者涉及到大量的按键。

例如,创建一个新的#区域或功能...

在VB.NET中创建一个区域涉及打字 + [R,在这点智能感知踢,并显示我#Region。我按空间#Region是自动完成的,因此允许我键入区域名称,然后单击输入并自动添加结束#End Region

在C#中,I型 + [R ...和虚无缥缈。我必须单击按Ctrl +ķ + X和片段来实现的列表中选择#Region同样的效果。

同样,当在VB.NET中编写函数时......自动完成在几秒钟内创建结构,而C#则涉及到必须手动添加括号等,为开发过程增加宝贵的秒数。 (也许还有另一个快捷键组合)

这些只是两个例子,但还有很多其他地方,VB.NET编辑器提供的快捷方式使得编码速度比C#编辑器快得多。 实际上,我感到非常震惊,因为C#经常被称赞比VB.NET“更好”。

反正咆哮过来。

我的问题是,是否有任何插件允许以与提供给VB.NET编辑器相同的方式自动完成C#编辑器?

+0

我相信Visual Studio VB.NET团队中的人员会在该团队未查找时关闭C#端的功能。听到很多关于这种看似简单的事情的咆哮。 –

+2

在c#中,如果您键入#region并点击选项卡,它会插入#endregion并将光标置于编辑框中以输入名称。此外,您可以选择文本行,右键单击并选择'Surround with ...',#region是其中一个选项。所以它可能与VB编辑器有点不同,但不是那么多。对于方法,只需创建一个代码片段,然后您可以键入片段并点击Tab以完全展开它。 –

Resharper ............................................. ............................................. ............................

+0

看起来可能会伎俩..明天早上将试用。谢谢! (如果它的工作将标记问题为答案):) – Peter

听起来像你需要做一些挖掘工具...选项>文本编辑器> C#并检查那里的配置。有些事情可以从那里进行调整,如果您在开始时将环境设置为VB.NET,则可能会错过。

您也可以查看Visual Studio Power Tools,它有一些额外的自动完成支架选项可用,以及其他一些可能有用的功能。

+0

我看了一下周围的选项好吧,所有相关的似乎勾选,但没有(我可以看到反正)是用于复制的功能类型前面提到过。 – Peter

+0

我的apoligies,我认为括号可以在一些选项中完成和自动插入的选项下配置。 Ctrl-K,X代表片段包含一些区域项目和您提到的其他项目。但是,是的,它肯定缺少了一些 –

我认为你只是习惯于在VB.NET编码。至于你对C#被视为优于VB.NET的评论,我认为你需要区分语言和编辑器,因为它们并不是固定在一起的。

C#可能不提供与VB相同的自动完成功能。NET的确如此,但我认为生产力归结为语言的舒适度。即使没有这些自动完成功能,我可以在C#中编写比在VB.NET中快得多的代码,这是因为我习惯了C#的行为方式,并且我知道如何使用编辑器进行流动。

在我的真实想法,我想你需要习惯在C#编码,然后才能对任一语言影响您的工作效率编码的真实评价。

编辑

如果你正在寻找免费的那堪比ReSharper的东西,我建议考虑看看CodeRush Xpress。还有一个全功能的CodeRush版本,比Resharper便宜100美元左右。

我的CodeRush从DevExpress大的支持者,供应在很大程度上类似的目的ReSharper的。在Code Rush中,如果我想放入一个区域,我选择我想要区域化的代码并按下Ctrl-3,然后使用区分名称上的插入符号创建区域,然后键入。它的行为也非常可以配置所有的模板(就像类似VS代码片段一样)。

完全披露,但 - 这是一种投资,因为Express版本具有非常小的功能Visual Studio 2010中您也愿意做这个或ReSharper的 - 也许不能同时使用。我有一次安装,我似乎记得他们没有很好地一起打球。

ReSharper对Visual Studio已经为VB.NET免费提供的C#有很多功能。

这里有一个代码片段插入一个私有方法:

<?xml version="1.0" encoding="utf-8" ?> 
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet"> 
    <CodeSnippet Format="1.0.0"> 
     <Header> 
      <Title>Private Method</Title> 
      <Shortcut>pvtm</Shortcut> 
      <Description>Code snippet for a private method</Description> 
      <Author>Your Name Here</Author> 
      <SnippetTypes> 
       <SnippetType>Expansion</SnippetType> 
      </SnippetTypes> 
     </Header> 
     <Snippet> 
      <Declarations> 
       <Literal> 
        <ID>type</ID> 
        <ToolTip>Return Type</ToolTip> 
        <Default>void</Default> 
       </Literal> 
       <Literal> 
        <ID>name</ID> 
        <ToolTip>Method name</ToolTip> 
        <Default>MyMethod</Default> 
       </Literal> 
      </Declarations> 
      <Code Language="csharp"><![CDATA[private $type$ $name$() 
    { 
     $selected$ $end$ 
    } //end method $name$]]> 
      </Code> 
     </Snippet> 
    </CodeSnippet> 
</CodeSnippets> 

我敢肯定,这可以改善,但你可以只输入pvtm并按下Tab键,瞧!你会得到一个完整的方法。再次,不像VB编辑器一样,但非常接近。有些人可能会说更好。

这是一个古老的片断,我认为它会在VS2010工作,但我还没有尝试过。