Hi, I should have explained my earlier example a bit better, Here Goes;
public class C : B { public C() : this( new GetDataFromTheDatabase() ) {} private C( GetDataFromTheDatabase data ) : base( data.a, data.b ){} } This takes advantage of the fact that you can chain into other constructors in your class. Regards Ian On Tue, 2010-11-16 at 18:35 +0000, Francisco M. Marzoa wrote: > Hello, > > I know you can call a base class constructor using ": base" after the > new constructor signature. I.e.: > > public class A > { > int i; > public A (int _i) > { > i=_i; > } > } > > public class B : A > { > public B (int a, int b) : base (a+b) // Calls A constructor with _i > as _a+_b > { > } > } > > But what happens if you should made some more complicated that cannot be > done in that way??? > > For example: > > public class C : B > { > public C () > { > MyDataStruct data = GetDataFromTheDatabase (); > base ( data.a, data.b ); // This will not work, indeed, but > illustrates the idea... > } > } > > This is a question more focused on C# than in mono itself, but I hope > not to disturb no one doing it here since the list has not very high trafic. > > Best regards, > _______________________________________________ > Mono-list maillist - Mono-list@lists.ximian.com > http://lists.ximian.com/mailman/listinfo/mono-list _______________________________________________ Mono-list maillist - Mono-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-list