así, inicializadores de objeto son todo tipo de práctica - especialmente si usted está haciendo LINQ, en las que son francamente necesaria - pero no puedo averiguar por éste:uso anidado de Inicializadores C# objetos
public class Class1 {
public Class2 instance;
}
public class Class2 {
public Class1 parent;
}
utilizando la siguiente manera:
Class1 class1 = new Class1();
class1.instance = new Class2();
class1.parent = class1;
como un inicializador:
Class1 class1 = new Class1() {
instance = new Class2() {
parent = class1
}
};
esto no funciona, es supuestamente class1 una variable local no asignada. se pone aún más difícil en LINQ cuando estás haciendo algo así como
select new Class1() { ...
que ni siquiera tiene un nombre para referirse a ella por!
¿cómo puedo evitar esto? ¿Puedo simplemente no hacer referencias anidadas usando los inicializadores de objetos?
me gusta esta respuesta mejor, pero no funciona para mí, porque me he dejado que Clase2 es en realidad Lista, para hacer más clara los ejemplos. drat, fue contraproducente. –