Implementando um mecanismo de mensagem / assinatura em c #

Estou prototipando um aplicativo WPF com o padrão MVVM. Após uma resposta aessa questão Eu configurei umModelProviderService que expõe modelos como propriedades. Os consumidores do serviço são os modelos de visão, ou seja, eles retiram seus modelos do serviço, em vez de instanciarem a si mesmos.

class ModelProviderService {

  private LoginModel loginModel;
  public LoginModel LoginModel {
    get { return loginModel; }
    set { loginModel = value; }
  }

  private ProjectsModel projectsModel;
  public ProjectsModel ProjectsModel {
    get { return projectsModel; }
    set { projectsModel = value; }
  }

  public ModelProviderService() {
    loginModel = new LoginModel();
    projectsModel = new ProjectsModel();
  }    
}

Agora, aqui está o que deve acontecer:

Um modelo de visão altera uma propriedade de, e. aLoginModel propriedade.O viewmodel retorna a propriedade model para o serviço, definindo sua propriedade:modelService.LoginModel.MyProperty = localLoginModel.MyProperty;O serviço deve publicar uma mensagem: "Ei, meu modelo de tipoLoginModel apenas mudou ".Qualquer outro viewmodel que tenha se inscrito nessa mensagem extrairá esse modelo alterado do serviço.

Como posso implementar:

a "mensagem de broadcast"?a assinatura da mensagem?

questionAnswers(2)

yourAnswerToTheQuestion