我有 2 种类型的消息:ServerMessage
和UserMessage
. 我有一个原始字符串,我必须从中创建此消息。
这是一个服务器消息的示例:
:choopa.nj.us.dal.net NOTICE AUTH :*** Looking up your hostname...
这是用户消息的示例:
:Abc!Abc@2001:123.4234.123.423 PRIVMSG #channelname :hello
所以首先我创建一个带有基本信息的 RawMessage,比如消息的部分和时间等。
但我已将此绑定RawMessage
到我WPF UI
的RawMessage
.
一方面,服务器窗口显示所有ServerMessages
不关心消息来自的用户,因为一切都来自服务器。
但是,各个频道窗口需要了解用户。所以我被迫将服务器与ServerMessage
类型绑定,通道窗口与UserMessage
类型绑定。
现在的问题是,当我创建 时RawMessage
,我是否在那一刻检查它以查看它是什么类型,然后将其丢弃以制作其他 2 种类型之一,然后绑定它?
或者对此有更优雅的多态解决方案吗?