我正在尝试对包含有关发布它的用户的信息的新闻帖子进行建模。我认为最好的方法是将用户摘要信息与消息一起发送以创建新闻帖子,但是如果基础用户信息发生更改,我有点困惑如何更新该摘要信息。现在我有以下NewsPostActor
和UserActor
public interface INewsPostActor : IActor
{
Task SetInfoAndCommitAsync(NewsPostSummary summary, UserSummary postedBy);
Task AddCommentAsync(string content, UserSummary, postedBy);
}
public interface IUserActor : IActor, IActorEventPublisher<IUserActorEvents>
{
Task UpdateAsync(UserSummary summary);
}
public interface IUserActorEvents : IActorEvents
{
void UserInfoChanged();
}
我遇到困难的地方是如何让INewsPostActor
实现订阅由IUserActor
. 我在https://github.com/Azure/servicefabric-samples/blob/master/samples/Actors/VS2015/VoiceMailBoxAdvanced/VoicemailBoxAdvanced.Client/Program.cs#L45SubscribeAsync
的示例代码中看到了该方法,但它是否合适在实现中使用它?这会让演员以任何理由活着吗?NewsPostActor
此外,我可以在新闻帖子中添加评论,那么是否也应该为每个评论的唯一用户NewsPostActor
保留订阅?IUserActor