件名を使用せずにRXでこの状況を実装するにはどうすればよいですか。私はたくさん読んだのですが、理解できないようです
public class Member
{
public int Id { get; private set; }
public string Email { get; private set; }
public Member(string email)
{
this.Email = email;
}
}
public class MemberRepository
{
public void AddMember(Member member)
{
// save member
memberAdded.OnNext(member);
}
private Subject<Member> memberAdded = new Subject<Member>();
public IObservable<Member> MemberAdded { get { return memberAdded.AsObservable(); } }
}
public class MemberController
{
public void Create(Member item)
{
var repository = new MemberRepository();
var subs = repository.MemberAdded.Subscribe(x => SendMail(x));
repository.AddMember(item);
}
private void SendMail(Member value)
{
// send welcome mail
}
}
IObservable MemberAddedを初期化する方法がわかりません。これは、Subjectバッカーがない場合は常にnullであり、後で関数からOnNextを呼び出す方法もわかりません。
最後に、オブザーバブルを静的プロパティとして、すべてのサブスクリプションコードを1か所にまとめることは問題ですか?