![]() |
1
2
根据您的答案,提供一个接受字符串的方法,该字符串指定客户端要订阅的列表的名称。使用
这个
当列表中的项目发生更改时,请从
|
![]() |
2
0
我能想到一个解决办法,但感觉有点奇怪,我也不太自信。 服务器为每个列表提供了一个通用的订阅方法。列表的名称作为参数传递。在更改任何列表时,服务器将发送更改列表的名称以及更改的项目。问题是,通常无法传递该项,因为回调约定只有一个“listwaschanged”方法(我绝对希望避免为每个列表使用新的回调方法,请参见问题)。 但是,可以通过将序列化为字符串的更改项传递来解决此问题。通过使用NetDataContractSerializer,客户机可以轻松地重建序列化项,并将其传递给每个列表的正确处理程序。 你觉得这个怎么样?这是可行的吗?一开始我认为这会严重影响性能,但第二次考虑时,我们无论如何都必须序列化每个项。唯一增加的性能影响是字符串的序列化,这不应该太多。 由于这听起来有点令人困惑,下面是一个伪代码实现: 服务器:
客户:
|