2017-02-23 46 views
0

发送消息给用户ID这是应该项目是如何工作的整体:
1. Mysql数据库保存所有用户ID
2.在服务器,它具有的功能,如ASPX web服务(连接到MySQL) GetMessage/SendMessage
3.来自客户端应用程序的用户将他的ID,接收者ID和消息发送给Webservice
4. Webservice将消息放入mysql数据库(带发送者ID和接收者ID)
5. SignalR应发送通知(ex senderID X发送给你一条消息)给特定用户的客户端应用程序(如果他当时已连接),然后客户端应用程序联系web服务并从mysql返回消息。

SignalR:从数据库

客户端应用程序是Xamarin的Android项目
Webservice的是简单的asp.net web服务

的问题是:
如何连接的客户端地图从MySQL中的用户ID?希望它是有道理的。

回答

0

Mapping SignalR Users to Connections教程解释了如何做到这一点。虽然它没有显示如何使用MySql来保存数据,但它显示了您选择的存储不会强加给您 - 它们会显示两个用于存储用户数据的不同数据存储库。基于这些示例,您应该能够使用MySql实现类似的功能。

+0

谢谢,这看起来像一个解决方案! – rokastokas

+0

还有一个问题。 IUserIdProvider userId是唯一的吗?每次同一个用户都一样吗? – rokastokas

+0

不知道为什么它很重要,但自工厂注册:'GlobalHost.DependencyResolver.Register(typeof(IUserIdProvider),()=> new MyIdProvider());'我相信你会每次都得到一个新的实例。 – Pawel