main
 1using System;
 2using gorilla.utility;
 3using solidware.financials.infrastructure.eventing;
 4
 5namespace solidware.financials.messages
 6{
 7    public class AddIncomeCommandMessage : ValueType<AddIncomeCommandMessage>, Event
 8    {
 9        public Guid PersonId { get; set; }
10        public decimal Amount { get; set; }
11        public DateTime Date { get; set; }
12    }
13
14    public class IncomeMessage : ValueType<IncomeMessage>, Announcement
15    {
16        public Guid PersonId { get; set; }
17        public decimal Amount { get; set; }
18        public DateTime Date { get; set; }
19
20        public override string ToString()
21        {
22            return "You got paid {0:C}!".format(Amount);
23        }
24
25        public void AnnounceUsing(Announcer announcer)
26        {
27        }
28    }
29}