Lightswitch HTML - 聊天应用程序升级

Lightswitch HTML - chat application upgrade

我想知道是否有人试过并让它工作?

http://lightswitchhelpwebsite.com/Blog/tabid/61/EntryId/182/Connecting-To-SignalR-With-LightSwitch-HTML-Client.aspx

基本上我的问题是我一开始就无法打开文件,无论是 Visual Studio 2012、2013 还是 2015,所以我按照指南使用了下载项目中的文件来处理此错误消息发生:

这是sendmessage_execute函数下的这一行造成的:

chat.server.send(screen.displayname, screen.message);

我希望有人已经完成了这项工作,并且可以指出与用户指南不同的地方,这是我所拥有的used/done:

下PROJECT.Server我有:

  1. 中创建了一个名为 SignalR 的文件夹,文件 ChatHub.cs
  2. 将 json2.js(两者)和 signalR(两者)文件添加到脚本 文件夹

下Project.HTMLClient

  1. 将 json2.js(两者)和 signalR(两者)文件添加到脚本 文件夹
  2. 引用了 default.htm 文件中包含本地主机的脚本
  3. 创建了一个屏幕。调用了 ChatScreen 并在此处添加了在线指南中的所有参考代码(3 个字符串和 1 个按钮)

我也按照说明安装了 Nu-GET

需要对此进行更多研究,我发现这个 post 它解释了如何更容易地做到这一点,并且在 2013/2015 的应用程序中,效果很好,可以很容易地适应其他屏幕

https://blogs.msdn.microsoft.com/rmattsampson/2013/03/14/asp-net-signalr-and-lightswitch-vs-2012-update-2-vs-2013-and-later/

我还设法编辑了代码块以在字符串中列出所有消息,这不是每次都存储和刷新,但现在可以在同一屏幕上进行对话

var string;

myapp.ChatScreen.created = function (screen) {

string = "";

$(function () {

    chat = $.connection.chatHub;
    chat.client.broadcastMessage = function (message) {

        string = string + message + ";";
        screen.updates = string.split(';').join("\r\n");
        console.log(string.split(';').join("\r\n"))


    };

    $.connection.hub.start()
    .done(function () {
    })
    .fail(function () {
        alert("Could not Connect! - ensure EnableCrossDomain = true");
    });
});

};

最好练习使用数组并以这种方式显示它,但上面的代码证明它有效