2017-05-13 17 views
2

저는 Asp.NET 멤버쉽을 사용하지 않습니다. 대신, 나는 내 자신의 회원 제도를 가지고있다. 나는 내 자신의 사용자 정보를 데이터베이스에 보관한다. 예를 들어데이터베이스의 사용자를 위해 SignalR 연결을 어떻게 제공합니까?

,

제임스 본드, 사용자 ID {AF433-DA322 ... - .........} 고유 식별자

내가 SignalR 나에 대한 connectionID을 만드는 오전 회원을 정의하고 싶습니다. 내 데이터베이스의 사용자 정보와 어떻게 관련이 있습니까?

목적은 데이터베이스의 멤버에게 메시지를 보낼 수 있습니다.

예 :

GUID 아이디 = {AF433-DA322-....... .......} 제임스 본드 :)]

Clients.User (아이디). 문자 보내); 어쨌든

, 당신은 어떻게 사용자와 데이터베이스 사이의 관계를 설정합니까? 어떻게 홍보 할 수 있습니까?

답변

2

이것은 SignalR 매핑 테이블을 사용하여 얻을 수 있습니다. 이 매핑 테이블에는 현재 GUID userID 및 SignalR 연결 ID가 들어 있습니다. 는 업데이트 트리거 또는 클라이언트와 서버 측의 접속 상태의 변화가 와야 상기 테이블 (SignalR 매핑 테이블)에 대해 삽입한다. 예.

서버 측에 RegisterUser 메소드를 구현하고 클라이언트 측에서 을 호출 한 다음 SinglaR 연결된 이벤트를 호출하십시오.

는 연결이 끊긴 : 서버 측의 분리 방법에 구독하고 당신의 논리에 따라 데이터베이스의 테이블 갱신을한다.

사용자에게 메시지를 보낼 때마다 위의 데이터베이스 테이블을 사용할 수 있습니다.