RuntimeBinderException:将类型System.Threading.Tasks.Task <object>转换为字符串</object>

时间:2014-07-17 13:02:47

标签: type-conversion

我用signalR做了一个例子。但由于一个错误,它无法发挥作用。 一个错误(无法将类型system.threading.tasks.task&lt; object&gt;转换为字符串)在此行中:

 return context.Clients.All.RecieveNotification(simple);

它位于代码的底部,您可以在下面看到。

下面你看到我写的方法。在那里,我与数据库建立连接,并通过命令/查询获取内容。 然后是几个检查,还有SqlDependency。

public string SendNotifications()

    {

        using (var connection = new SqlConnection(ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString))

        {

            string query = "SELECT  eintrag FROM [dbo].[simple_column]";

            connection.Open();

            using (SqlCommand command = new SqlCommand(query, connection))

            {                  

                command.Notification = null;                

                DataTable dt = new DataTable();

                SqlDependency dependency = new SqlDependency(command);

                dependency.OnChange += new OnChangeEventHandler(dependency_OnChange);

                if (connection.State == ConnectionState.Closed)

                    connection.Open();                

                var reader = command.ExecuteReader();

                dt.Load(reader);

                if (dt.Rows.Count > 0)

                {

                    simple = dt.Rows[0]["eintrag"].ToString();

                }

            }  

        }
        IHubContext context = GlobalHost.ConnectionManager.GetHubContext<NotificationHub>();

        return context.Clients.All.RecieveNotification(simple);
    }

在这里我使用函数:

var notifications = $.connection.notificationHub;
notifications.client.recieveNotification = function (simple) {

        // Add the message to the page.

        $('#dbMessage').text(simple);

    };

我希望你能帮助我。

感谢。

0 个答案:

没有答案