Есть ли инструмент, который будет автоматически отступать код, который использует инициализаторы объектов следующим образом:
SomeType someType = new SomeType
{
Prop1 = "prop 1 value",
Prop2 = "prop 2 value",
Things = new List<Thing>
{
new Thing
{
ThingProp = "thing prop value"
}
}
};
то есть. используя те же правила отступов, что и в другом коде С#.
ReSharper любит отступать больше, но не будет поддерживать намерение, если код изменится позже (мы отключили различные параметры ReSharper, чтобы это не происходило).
Стандартная опция форматирования Visual Studio 2008 (Ctrl-K-D) не изменяет отступ инициализаторов объектов.
Определения классов приведены ниже
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; }
}