Czy istnieje narzędzie, które auto-indent kod, który wykorzystuje object initializers w następujący sposób:Mocowanie wcięcie gdy inicjalizatory obiektów zostały wykorzystane
SomeType someType = new SomeType
{
Prop1 = "prop 1 value",
Prop2 = "prop 2 value",
Things = new List<Thing>
{
new Thing
{
ThingProp = "thing prop value"
}
}
};
czyli przy użyciu tego samego nawias wcięcia przepisy są powszechnie postrzegane w innym języku C# kod.
ReSharper lubi wciskać bardziej intensywnie, ale nie będzie utrzymywał intencji, jeśli kod później się zmieni (wyłączyliśmy różne opcje ReSharper, aby temu zapobiec).
Standardowa opcja formatowania Visual Studio 2008 (Ctrl-K-D) nie zmienia wcięć obiektów inicjalizujących.
definicje klasy są zawarte poniżej
public class Thing
{
public string ThingProp { get; set; }
}
public class SomeType
{
public string Prop1 { get; set; }
public string Prop2 { get; set; }
public List<Thing> Things { get; set; }
}
To powstrzymuje ReSharper od wtrącania się przy formatowaniu, ale niestety nie pomaga w automatycznym formatowaniu. –
Naprawdę? Dla mnie to sprawiło, że autoformatowanie działało tak, jak się spodziewałem. Kiedy naciśniesz}, co robi? ? –
Mój początkowy komentarz nie był w 100% poprawny - działa, ale nie dla "Listy" inicjalizacji –