2011-05-27 51 views
4

有沒有什麼辦法可以在Brace上禁用ReSharper Web Form/MVC(.aspx)代碼格式(})完成?有沒有什麼辦法可以在Brace(})完成時禁用ReSharper Web Form/MVC(.aspx)代碼格式?

這真的令人沮喪,大部分時間都不是我想要的。舉例來說,如果我有:

<% if (CurrentUser.IsRole(Helper.UserRole.Agent)) { %> 
    <%= Html.LinkTo("sign out", SessionRoutes.Logout, null, new { @class = "sign" }) %> 
<% } else { %> 
    ... 
<% } %> 

當我鍵入最後<% }它的格式是這樣的:

<% if (CurrentUser.IsRole(Helper.UserRole.Agent)) 
    { %> 
<%= Html.LinkTo("sign out", SessionRoutes.Logout, null, new { @class = "sign" })%> 
    <% } 
    else 
    {%> 

    <% 
    }%> 

我已經通過ReSharper的選項看,卻找不到合適的任何設置。這讓我瘋狂!爲了解決它,我要麼必須粘貼支架,有時候是很幸運的是CTRL +ž作品或鍵入<{然後插入%然後空間:S

我相信任何人誰曾與ReSharper的工作最近網絡表單會知道我在說什麼。

感謝

+0

您使用的是ReSharper 6 EAP或5.x嗎? – gorohoroh 2011-05-27 10:59:27

+0

5.1(評論填寫,評論填寫) – GONeale 2011-05-29 04:35:49

回答

3

首先,您應該更改大括號佈局的選項以符合您的風格。轉到ReSharper |選項>語言> C#>格式化樣式>大括號佈局>大括號佈局並將選項「其他」更改爲「行尾(K & R樣式)」。

接下來,請注意,確實有一個錯誤有時會導致ReSharper在<%之後或%>之前插入換行符。這個bug在內部版本中得到了解決,應該在下一個EAP(稍後的2011年6月7日)以及將來的6.0 beta版本中發佈。

如果您希望完全禁用ReSharper選項中的自動格式(但這不僅會影響ASP.NET,還會影響常規的C#文件)。轉到ReSharper |選項「>」編輯器「,然後關閉分號上的自動格式和右大括號上的自動格式。

希望這會有所幫助:)

+0

感謝德米特里,我會看看大括號佈局選項,但期待下一個EAP。 – GONeale 2011-06-08 05:32:31

+1

德米特里,我最近在6.0 RTM中遇到的困難是Razor文件中的所有標籤完成,可以單獨關閉嗎?所有這些真的應該是粒子控制。我喜歡ReSharper,但我真的不喜歡所有的HTML編碼幫助,現在用CSS類協助它經常選擇類名和自動完成之前,我完成了打字,然後我有兩個書面:( – GONeale 2011-07-08 01:00:50

+0

也德米特里抱歉打擾你,但不少人在6.0版本中遇到與intellisense /和/或performance有關的問題,我希望你已經看到了這個主題。因爲我也一致認爲,快速打字速度會導致一個大問題,並帶有許多格式錯誤的html,其中包括intellisense http://devnet.jetbrains.net/thread/305694;jsessionid=F2D33679D73D37997A9C27BA7824687C?tstart=0和http://devnet.jetbrains。 net/message/5308690#5308690 – GONeale 2011-07-08 01:09:32

1

你確定這是ReSharper的是在做格式化? Visual Studio本身也有一個「自動格式化完成的塊」選項。

工具|選項>文本編輯器> C#>格式化

+2

這不是Resharper tho重寫的嗎? – 2012-06-23 04:12:08

相關問題