Implementing a covariant interface for different types is a really bad idea. See what happens if you apply the class to the IObservable<object> , which is now ambiguous.
I would prefer to have two properties: IObservable<Status> StatusObservable{get{...}} and IObservable<Value> ValueObservable{get{...}} . Simple, clean and reflects the two events that your class offers.
CodesInChaos Jan 28 '13 at 11:11 2013-01-28 11:11
source share