2010-01-20 18 views
27

Cuando refactorizar la siguiente línea:Cómo cambiar el formato de la refactorización "Usar inicializador de objetos" en Resharper?

Employee e = new Employee(); 
e.First = "Frank"; 
e.Last = "Rizzo"; 

usando "Uso inicializador de objeto" de ReSharper, me sale el siguiente:

Employee e = new Employee 
      { 
       First = "Frank", 
       Last = "Rizzo" 
      }; 

realmente odio este tipo de formato, ya que con los nombres y las variables de objeto más largos simplemente se sale de control. ¿Cómo puedo hacer que Resharper haga lo siguiente?

Employee e = new Employee 
{ 
    First = "Frank", 
    Last = "Rizzo" 
}; 
+1

Me pregunto quién se le ocurrió esta idea en primer lugar. Nadie en su sano juicio sangraría inicializadores así. – neo2862

+3

Tengo la buena idea de que era alguien en su mente izquierda. – JYelton

+0

no no no cambia la configuración predeterminada de Resharper, es perfecto :-) – Karsten

Respuesta

39

Puedes acercarte mucho a lo que quieres en Resharper 4.5.

ReSharper> Opciones

Idiomas> C#> formato de estilo> Otro

en Otros desmarque "matriz, objeto y recogida bloque inicializador sangría".

+3

Absolutamente perfecto. Ojalá pudiera votar más. – AngryHacker

+0

El uso de esto con la Versión 5 proporciona 1 sangría de tabulación en lugar de 0. mejor que nada ... – mbx

+1

encontró respuesta a eso en http://stackoverflow.com/questions/747351/custom-brace-formatting-with-resharper – mbx

3

En ReSharper 7 esta opción está aquí:

ReSharper/Opción/C#/formato de estilo/tirantes Disposición conjunto de la matriz y inicializador de objeto a: "Al siguiente línea (BSD)"

+1

No sé sobre RS7, pero en RS6 definitivamente no es el lugar correcto: la configuración en Formato> Otro determina si la sangría establecida aquí es relativa al comienzo de la línea o a la declaración del inicializador. La vista previa en vivo de cada configuración te mostrará lo que quiero decir mejor de lo que las palabras pueden explicarlo :) –

+0

@David Krmpotic tiene razón sobre RS7, y RS8 lo tiene en el mismo lugar. –

+0

En Reshaper 8, la configuración para no sangrar el inicializador de objetos es Resharper/Opción/C#/Estilo de formateo/Otro/Alinear construcciones/matriz multilínea, objeto e inicializador de recopilación –

Cuestiones relacionadas