SignalR не работает с asp.net и sql server 2014 - PullRequest
0 голосов
/ 29 декабря 2018

SignalR с Asp.net MVC

Я пытаюсь с 10 дней, но не могу решить мою проблему SignalR.Просто я хочу показать некоторые данные, используя signalR, Вот мой код **

public List<User> Get()
        {
            List<User> user = new List<User>();
            using (SqlConnection conn = new SqlConnection(conString))
            {
                string query = @"SELECT [Name],[Address] FROM [dbo].[UserTable]";
                SqlCommand comm = new SqlCommand(query, conn);
                conn.Open();
                comm.Notification = null;
                SqlDependency dep = new SqlDependency(comm);
                dep.OnChange += Dep_OnChange;
                using (SqlDataReader reader = comm.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        User users = new User();
                        users.Name = reader[0].ToString();
                        users.Address = reader[1].ToString();
                        user.Add(users);
                    }
                }
            }
            return user;
private void Dep_OnChange(object sender, SqlNotificationEventArgs e)
        {
            if (e.Type == SqlNotificationType.Change)
            {
                MyHub hub = new MyHub();
                hub.Send();
            }

        }

** Код контроллера:

 public JsonResult GetAll()
        {
            NotificationComponent dc = new NotificationComponent();
            var list = dc.Get();
            return new JsonResult { Data=list,JsonRequestBehavior=JsonRequestBehavior.AllowGet};
        }

это возвращает список пользователей, но не асинхронно (какожидается).

Мой код JS здесь.

<script>
        function getAll() {
            $.ajax({
                type: 'GET',
                url: '/Home/GetAll',
                success: function (data) {
                    for (var i = 0; i < data.length; i++) {
                        $('#get').append("<li>Name: " + data[i].Name + "Address: " + data[i].Address + "</li>");
                    }
                }
            })
        }

            $.connection.hub.start()
                .done(function () {
                    console.log("Hub Connected...");

            })
       getAll();
            $.connection.myHub.client.notify = function () {
                getAll();
            }

    </script>

Запросы Sql

GRANT SUBSCRIBE QUERY NOTIFICATIONS TO [NT AUTHORITY\NETWORK SERVICE]
GRANT SUBSCRIBE QUERY NOTIFICATIONS TO [NT AUTHORITY\IUSR]
GRANT SUBSCRIBE QUERY NOTIFICATIONS TO [JANBAZ\JANBAZ KHAN]
ALTER DATABASE [SignalRDb] SET ENABLE_BROKER WITH ROLLBACK IMMEDIATE

это все, что я сделал, я думаю, что запрос является проблемой, пожалуйста, помогитеСпасибо заранее (VS 2017, IIS Version 10, Sql server2014, win 10)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...