Home

Awesome

ASP.NET Core SignalR [Archived]

This GitHub project has been archived. Ongoing development on this project can be found in https://github.com/aspnet/AspNetCore.

IMPORTANT: This repository hosts code and project management for ASP.NET Core SignalR, for use in ASP.NET Core applications using Microsoft.AspNetCore.App. If you are looking for information on ASP.NET SignalR (used in .NET Framework applications using System.Web and/or Katana), see the https://github.com/SignalR/SignalR repository.

ASP.NET Core SignalR is a new library for ASP.NET Core developers that makes it incredibly simple to add real-time web functionality to your applications. What is "real-time web" functionality? It's the ability to have your server-side code push content to the connected clients as it happens, in real-time.

You can watch an introductory presentation here - ASP.NET Core SignalR: Build 2018

This project is part of ASP.NET Core. You can find samples, documentation and getting started instructions for ASP.NET Core at the Home repo.

Documentation

Documentation for ASP.NET Core SignalR can be found in the Real-time Apps section of the ASP.NET Core Documentation site.

TypeScript Version

If you are encountering TypeScript definition issues with SignalR, please ensure you are using the latest version of TypeScript to compile your application. If the issue occurs in the latest TypeScript, please let us know.

When in doubt, check the version of TypeScript referenced by our package.json file. That version is the minimum TypeScript version expected to work with SignalR.

Packages

You can install the latest released JavaScript client from npm with the following command:

npm install @aspnet/signalr

The @aspnet/signalr package (and it's dependencies) require NPM 5.6.0 or higher.

NOTE: Previous previews of the SignalR client library for JavaScript were named @aspnet/signalr-client. This has been deprecated as of Preview 1.

IMPORTANT: When using preview builds, you should always ensure you are using the same version of both the JavaScript client and the Server. The version numbers should align as they are produced in the same build process.

The CI build publishes the latest dev version of the JavaScript client to our dev npm registry as @aspnet/signalr. You can install the module as follows:

Alternatively, if you don't want to create the .npmrc file run the following commands:

npm install @aspnet/signalr --registry https://dotnet.myget.org/f/aspnetcore-dev/npm/

We also have a MsgPack protocol library which is installed via:

npm install @aspnet/signalr-protocol-msgpack

Deploying

Once you've installed the NPM modules, they will be located in the node_modules/@aspnet/signalr and node_modules/@aspnet/signalr-protocol-msgpack folders. If you are building a NodeJS application or using an ECMAScript module loader/bundler (such as webpack), you can load them directly. If you are building a browser application without using a module bundler, you can find UMD-compatible bundles in the dist/browser folder; minified versions are provided as well. Simply copy these to your project as appropriate and use a build task to keep them up-to-date.

Building from source

To run a complete build on command line only, execute build.cmd or build.sh without arguments.

If this is your first time building SignalR please see the Getting Started for more information about project dependencies and other build-related information specific to SignalR.

See developer documentation for general information on building and contributing to this and other aspnet repositories.