Сбой приложения после SQLDependancy - PullRequest
0 голосов
/ 16 ноября 2018

В моей ViewModel я звоню NotifyMe(), что делает следующее:

  SqlDependency.Start(ConfigurationManager.ConnectionStrings["StringConnexion"].ConnectionString);
        await _connection.OpenAsync();

        using (command = new SqlCommand(
            "SELECT  [NUM_DRC] ,[MAT_EMP] ,[NUM_RC] ,[DEBUT_DRC] ,[FIN_DRC],[DATE_ETAB_DRC] ,[MOTIF_DRC] ,[STATUS_DRC] FROM [dbo].[DEMANDE_RECUPERATION] WHERE [STATUS_DRC] = 'En attente' ",
            _connection))
        {
            dependency = new SqlDependency(command);
            dependency.OnChange += OnDependencyChange;
            using (reader = await command.ExecuteReaderAsync())
            {
                while (reader.Read())
                {
                    RcCount++;

                }

            }
        }

        using (command2 = new SqlCommand("SELECT[NUM_DC] ,[MAT_EMP] ,[NUM_CONGE] ,[DATE_ETAB_DC] ,[DC_DEBUT] ,[DC_FIN] ,[LIEU_JOUISSANCE] ,[STATUS_DC] FROM[dbo].[DEMANDE_CONGE] WHERE [STATUS_DC] = 'En attente'",
            _connection))
        {
            dependency2 = new SqlDependency(command2);
            dependency2.OnChange += OnDependencyChange2;
            using (reader2 = await command2.ExecuteReaderAsync())
            {
                while (reader2.Read())
                {
                    DcCount++;

                }

            }

        }


        using (command3 = new SqlCommand("SELECT[NUM_DAS],[MAT_EMP],[NUM_AS],[DATE_ETAB_DAS],[DEBUT_DAS],[FIN_DAS],[MOTIF_DAS],[STATUS_DAS] FROM[dbo].[DEMANDE_DE_SORTIE] WHERE [STATUS_DAS] = 'En attente' ",
            _connection))
        {
            dependency3 = new SqlDependency(command3);
            dependency3.OnChange += OnDependencyChange3;
            using (reader3 = await command3.ExecuteReaderAsync())
            {
                while (reader3.Read())
                {
                    AsCount++;

                }

            }

        }


        using (command4 = new SqlCommand("SELECT [NUM_DAB] ,[NUM_ABS],[MAT_EMP],[DATE_ETAB_DAB],[DEBUT_DAB],[FIN_DAB],[MOTIF_DAB],[STATUS_DAB] FROM [dbo].[DEMANDE_ABSENCE] WHERE [STATUS_DAB] = 'En attente' ",
            _connection))
        {
            dependency4 = new SqlDependency(command4);
            dependency4.OnChange += OnDependencyChange4;
            using (reader4 = await command4.ExecuteReaderAsync())
            {
                while (reader4.Read())
                {
                    AbsCount++;

                }

            }

        }





        using (command5 = new SqlCommand("SELECT [NUM_DMD],[NUM_MD],[MAT_EMP],[DATE_ETAB_DMD],[DEBUT_DMD],[FIN_DMD],[MOTIF_DMD],[STATUS_DMD] FROM [dbo].[DEMANDE_MD] WHERE [STATUS_DMD] = 'En attente' ",
            _connection))
        {
            dependency5 = new SqlDependency(command5);
            dependency5.OnChange += OnDependencyChange5;
            using (reader5 = await command5.ExecuteReaderAsync())
            {
                while (reader5.Read())
                {
                    MdCount++;

                }

            }

        }

На моем компьютере все работает нормально.

Я попытался запустить то же самое приложение на ноутбуке моего друга, и приложение открывается в течение 1 секунды, а затем закрывается без сообщений об ошибках или чего-либо еще. Если я удаляю NotifyMe(), он отлично работает.

Где будет проблема в этом случае? Я не могу выполнить отладку на этом ПК, так как у меня нет Visual Studio, как вы предлагаете мне в этом случае?

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