0

我正在尝试使用 signalR javascript 将数据从 mvc razor 表单插入数据库。任何人有一些好的建议如何正确使用?第一次使用 SignalR。这是我拥有的代码,我需要在 @RenderBody() 行下方输入 SignalR js 代码。

<!DOCTYPE html>

<script src="~/Scripts/jquery-1.6.4.min.js" type="text/javascript"></script>
<script src="~/Scripts/jquery.signalR.min.js" type="text/javascript"></script>
<script src="Scripts/knockout-2.0.0.js" type="text/javascript"></script>
<script src="Scripts/json2.min.js" type="text/javascript"></script>

<html lang="en">
    <head>
        <meta charset="utf-8" />
        <title>My ASP.NET Web Page - @Page.Title</title>
        <link href="@Href("~/Styles/Site.css")" rel="stylesheet" />
        <link href="@Href("~/favicon.ico")" rel="shortcut icon" type="image/x-icon" />
    </head>
    <body>
        <div id="page">
            <div id="header">
                <p class="site-title">My ASP.NET Web Page</p>
                <div id="login">
                    @if (WebSecurity.IsAuthenticated)
                    {
                        <p>
                            Welcome <a href="@Href("~/Account/ChangePassword")" title="Change password">@WebSecurity.CurrentUserName</a>!
                            <a href="@Href("~/Account/Logout")">Logout</a>
                        </p>
                    }
                    else
                    {
                        <ul>
                            <li><a href="@Href("~/Account/Register")">Register</a></li>
                            <li><a href="@Href("~/Account/Login")">Login</a></li>
                        </ul>
                    }
                </div>
                <ul id="menu">
                    <li><a href="@Href("~/")">Home</a></li>
                    <li><a href="@Href("~/About")">About</a></li>
                </ul>
            </div>
            <div id="main">
                <div id="content">
                    <h1>@Page.Title</h1>
                    @RenderBody()
                    <script type="text/javascript">
                    $(function () {
                    var test = $.connection.SignalRHub();
                    </script>
                </div>
                <div id="footer">
                    &copy; @DateTime.Now.Year - My ASP.NET Web Page
                </div>
            </div>
        </div>
    </body>
</html>

我也有课,我想输入代码以将数据插入数据库。我需要使用集线器,我认为这是正确的方法,但是欢迎任何有 SignalR 经验的人给我建议。

这是代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using SignalR.Hubs;

/// <summary>
/// Summary description for SignalRHub
/// </summary>
namespace SignalR
{
public class SignalRHub : Hub
{
    public SignalRHub(string message)
    {
        string test = "";
    }
    public void InsertData(string value)
    {

    }
    public void DeleteData(int id)
    {
    }
}
} 

提前致谢, Laziale

4

4 回答 4

2

您缺少集线器的包含。你可以在这里阅读更多https://github.com/SignalR/SignalR/wiki/QuickStart-Hubs

于 2012-01-26T18:56:07.500 回答
1

我将从阅读这篇文章开始:

http://www.dotnetcurry.com/ShowArticle.aspx?ID=780

它将引导您完成如何设置 SignalR 并将其与 ASP.NET MVC3 一起使用。该文章还包括填充源,因此您可以深入研究它。这是代码的链接:

www.dotnetcurry.com/Uploads/mvc/MultiEditWithSignalR.zip

祝你好运!

于 2012-01-26T17:14:48.793 回答
0

我猜您缺少用于集线器的 javascript 包含。

<script src="/signalr/hubs"></script>

为此,您必须为您的集线器添加一条路线。

public static void RegisterRoutes(RouteCollection routes)
    {
        RouteTable.Routes.MapHubs();

....

我不知道您是否继续使用 SignalR,但它绝对是一种与客户、客户之间和客户之间交流的好方法。

于 2013-01-22T11:24:01.440 回答
0

你可以在这里找到你想做的示例应用程序

http://www.amazedsaint.com/2011/11/introduction-ksigdo-knockout-signalr-to.html

于 2012-01-30T18:13:24.147 回答