書き方が全然違う。
正しくはこう。

public class TransactionHistory {
public TransactionHistory() { //コンストラクタ
yesterday = new YesterdayTransactionSummary(this);
lastmonth = new LastMonthTransactionSummary(this);
lastyear = new LastYearTransactionSummary(this);
}

[OnDeserialized()]
private void OnDeserializedMethod(StreamingContext context) { // デシリアライズ時に呼ばれる
yesterday = new YesterdayTransactionSummary(this);
lastmonth = new LastMonthTransactionSummary(this);
lastyear = new LastYearTransactionSummary(this);
}
}

これが基本の書き方ですね。