ReflectionHelper.GetExportedHubMethods allows unintended methods to be called. There are two issues: (a) it uses a blacklist approach instead of a whitelist approach [which forgets about things like events], and (b) it does not account for virtual overrides. Look at MVC’s ActionMethodSelector for inspiration.
Don't expose certain methods on hub methods.
- Don't expose methods on object or events.
- Added unit tests.