SlideShare a Scribd company logo
SIGNALR + ASP.NET
MVC
LEVERAGING ON REAL-TIME DATA UPDATES
TOPICS
• Introduction to ASP.NET MVC 6 + ASP.NET 5
• Key Concepts of SignalR
• Quick Look at SignalR
• SignalR with ASP.NET MVC 6 deep-dive demo
• Questions & Answer
ASP.NET MVC 6 + ASP.NET 5
• ASP.NET is now on Mac and Linux
• No More Web Forms
• No More Visual Basic
• Tag Helpers versus MVC Helpers
• View Components
• Microsoft.AspNet.Mvc.Controller
• AngularJS
SIGNALR
Advocating a Real Time Data Communication between UIs
KEY CONCEPTS
•Remote Procedural Calls (RPC)
•WebSocket Wrapper
•Transports & Fallbacks
KEY CONCEPTS: “SERVER PUSHING”
“SignalR supports "server push"
functionality, in which server code can
call out to client code in the browser
using Remote Procedure Calls (RPC),
rather than the request-response model
common on the web today. ”
KEY CONCEPTS: TRANSPORTS
• HTML5 Transports
• WebSocket – only transport that establishes true two way persistent connection
• Server Sent Events - EventSource
• Comet Transports (makes use of HTTP)
• Forever Frame (only IE)
• Ajax Long Polling
KEY CONCEPTS: TRANSPORTS
$.connection.hub.logging = true;
• Enable Logging in your code
• Opening the Console Window in your web browser
KEY CONCEPTS: SPECIFYING A TRANSPORT
If you know the client’s capability…
connection.start({ transport: 'longPolling' });
If not, always make sure there is a fallback…
connection.start({ transport: ['webSockets','longPolling'] });
KEY CONCEPTS: SPECIFYING A TRANSPORT
•webSockets
•foreverFrame
•serverSentEvents
•longPolling
KEY CONCEPTS: CONNECTIONS & HUBS
• Persistent Connection
• Low-level communication protocol
• PersistentConnection class
• Hub
• High-level pipeline
• Allowing clients to call methods on servers
• Similarity to .NET Remoting
KEY CONCEPTS: HOW HUBS WORK
• Server-side calls a method on the client
• A packet is sent across (name of method + parameters)
• If the parameter is an object, it will be serialized as JSON
• Client checks to see if the method exists in client-side coding
• If exists, the method is executed using the deserialized parameter data.
KEY CONCEPTS: WHEN TO USE PERSISTENT
CONNECTION?
• The format of the actual message sent needs to be specified.
• The developer prefers to work with a messaging and dispatching model rather
than a remote invocation model.
• An existing application that uses a messaging model is being ported to use
SignalR.
GETTING STARTED
install-package Microsoft.AspNet.SignalR
DEMO
TELERIK PROFILE
•Since 2002
•Over 1.7 million developers
•Developer-focused
ABIT ABOUT TELERIK
• UI Toolkits – Web Forms, MVC, Silverlight, Kendo UI, WinForms, WPF, UWP
(Windows 10), and many more.
• Telerik Test Studio – Automated Testing solution (Native Mobile Apps)
• Telerik Platform – Cross-platform Mobile App Development & Management
• Telerik Sitefinity – Web Content Management System
CONTACT
• http://theprogrammingnerd.com
• http://github.com/telerikgeek
• Skype: metanoia.sherman
• Instagram: telerikgeek
• Twitter: telerikgeek
QUESTIONS?

More Related Content

PDF
Talking About SSRF,CRLF
PPT
Intro to signalR
PPTX
Introduction to Node.js
PPTX
Tiki.vn - How we scale as a tech startup
PPTX
Why java is important in programming language?
PPT
Web Development on Web Project Presentation
PDF
Domain Driven Design Introduction
Talking About SSRF,CRLF
Intro to signalR
Introduction to Node.js
Tiki.vn - How we scale as a tech startup
Why java is important in programming language?
Web Development on Web Project Presentation
Domain Driven Design Introduction

What's hot (20)

PDF
Declarative Clients in Spring
PPTX
Ppt on sql injection
PPTX
PPT
Be project ppt asp.net
PPTX
Reactive programming intro
PPTX
A brief introduction to SQLite PPT
PDF
Introduction to Celery
PPTX
Saturn 2018 rest.li
PPT
Ppt for Online music store
PPT
Web Servers: Architecture and Security
PDF
Sql Injection Myths and Fallacies
PPTX
JavaScript
PDF
Top 100 .NET Interview Questions and Answers
PPTX
Lamp technology
PPT
ODP
Secure coding in C#
PPTX
ADP- Chapter 3 Implementing Inter-Servlet Communication
PPTX
Zoo management system
PPTX
An Introduction To Python - Graphics
PPT
Node.js Express Framework
Declarative Clients in Spring
Ppt on sql injection
Be project ppt asp.net
Reactive programming intro
A brief introduction to SQLite PPT
Introduction to Celery
Saturn 2018 rest.li
Ppt for Online music store
Web Servers: Architecture and Security
Sql Injection Myths and Fallacies
JavaScript
Top 100 .NET Interview Questions and Answers
Lamp technology
Secure coding in C#
ADP- Chapter 3 Implementing Inter-Servlet Communication
Zoo management system
An Introduction To Python - Graphics
Node.js Express Framework
Ad

Similar to SignalR with ASP.NET MVC 6 (20)

PPTX
signalr
PPTX
ASP.NET MVC 5 and SignalR 2
PPTX
SignalR Overview
PPTX
Real time Communication with Signalr (Android Client)
PDF
SignalR: Add real-time to your applications
PPTX
SignalR with asp.net
PPTX
Aplicaciones en tiempo real con SignalR
PPTX
Real-time Communications with SignalR
PPTX
Building Real Time Applications with ASP.NET SignalR 2.0 by Rachel Appel
PPTX
Real Time Web with SignalR
PPTX
Real-time Communication using SignalR and cloud
PPTX
SignalR for ASP.NET Developers
PPTX
Signal r
PPTX
Real time app with SignalR
PPTX
Introduction to SignalR
PPSX
Signalr with ASP.Net part2
PPTX
SignalR
PPTX
SignalR Powered X-Platform Real-Time Apps!
PPTX
SignalR Dublin ALT.NET
PPSX
SignalR With ASP.Net part1
signalr
ASP.NET MVC 5 and SignalR 2
SignalR Overview
Real time Communication with Signalr (Android Client)
SignalR: Add real-time to your applications
SignalR with asp.net
Aplicaciones en tiempo real con SignalR
Real-time Communications with SignalR
Building Real Time Applications with ASP.NET SignalR 2.0 by Rachel Appel
Real Time Web with SignalR
Real-time Communication using SignalR and cloud
SignalR for ASP.NET Developers
Signal r
Real time app with SignalR
Introduction to SignalR
Signalr with ASP.Net part2
SignalR
SignalR Powered X-Platform Real-Time Apps!
SignalR Dublin ALT.NET
SignalR With ASP.Net part1
Ad

More from Tung Nguyen Thanh (20)

PPTX
How to become senior .net developer
PPTX
Docker for .net developer
PPTX
Continuous Delivery with VS2015 and TFS2015
PPTX
Agile .NET Development with BDD and Continuous Integration
PPT
Performance Tuning And Optimization Microsoft SQL Database
PPTX
HaNoi Net Group Introduction
PPTX
Software architecture for high traffic website
PPTX
TDD - Test Driven Development
PPTX
Refactoring code in .net
PPTX
Visual studio 2015 ide new features
PPTX
Whatmakesoftwareflexible
PDF
How to release every week case study of continuous integration
PDF
Xp not windows xp
PDF
Is xp still extreme
PDF
Workshop fight legacy code write unit test
PPTX
Windows Phone Introduction
PPTX
Developing windows phone 7 application with silverlight
PPTX
New in Visual Studio and TFS 2013
PPTX
Visual studio2012 tipsandtricks
PPTX
UI prototyping with ms expression blend sketch flow
How to become senior .net developer
Docker for .net developer
Continuous Delivery with VS2015 and TFS2015
Agile .NET Development with BDD and Continuous Integration
Performance Tuning And Optimization Microsoft SQL Database
HaNoi Net Group Introduction
Software architecture for high traffic website
TDD - Test Driven Development
Refactoring code in .net
Visual studio 2015 ide new features
Whatmakesoftwareflexible
How to release every week case study of continuous integration
Xp not windows xp
Is xp still extreme
Workshop fight legacy code write unit test
Windows Phone Introduction
Developing windows phone 7 application with silverlight
New in Visual Studio and TFS 2013
Visual studio2012 tipsandtricks
UI prototyping with ms expression blend sketch flow

Recently uploaded (20)

PDF
AI in Product Development-omnex systems
PPTX
Odoo POS Development Services by CandidRoot Solutions
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PDF
medical staffing services at VALiNTRY
PPTX
Introduction to Artificial Intelligence
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PDF
Understanding Forklifts - TECH EHS Solution
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PDF
System and Network Administraation Chapter 3
PDF
top salesforce developer skills in 2025.pdf
PPTX
CHAPTER 2 - PM Management and IT Context
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
System and Network Administration Chapter 2
PDF
Nekopoi APK 2025 free lastest update
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
AI in Product Development-omnex systems
Odoo POS Development Services by CandidRoot Solutions
Design an Analysis of Algorithms I-SECS-1021-03
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
medical staffing services at VALiNTRY
Introduction to Artificial Intelligence
How to Migrate SBCGlobal Email to Yahoo Easily
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
Understanding Forklifts - TECH EHS Solution
Design an Analysis of Algorithms II-SECS-1021-03
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
System and Network Administraation Chapter 3
top salesforce developer skills in 2025.pdf
CHAPTER 2 - PM Management and IT Context
Internet Downloader Manager (IDM) Crack 6.42 Build 41
System and Network Administration Chapter 2
Nekopoi APK 2025 free lastest update
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...

SignalR with ASP.NET MVC 6

  • 1. SIGNALR + ASP.NET MVC LEVERAGING ON REAL-TIME DATA UPDATES
  • 2. TOPICS • Introduction to ASP.NET MVC 6 + ASP.NET 5 • Key Concepts of SignalR • Quick Look at SignalR • SignalR with ASP.NET MVC 6 deep-dive demo • Questions & Answer
  • 3. ASP.NET MVC 6 + ASP.NET 5 • ASP.NET is now on Mac and Linux • No More Web Forms • No More Visual Basic • Tag Helpers versus MVC Helpers • View Components • Microsoft.AspNet.Mvc.Controller • AngularJS
  • 4. SIGNALR Advocating a Real Time Data Communication between UIs
  • 5. KEY CONCEPTS •Remote Procedural Calls (RPC) •WebSocket Wrapper •Transports & Fallbacks
  • 6. KEY CONCEPTS: “SERVER PUSHING” “SignalR supports "server push" functionality, in which server code can call out to client code in the browser using Remote Procedure Calls (RPC), rather than the request-response model common on the web today. ”
  • 7. KEY CONCEPTS: TRANSPORTS • HTML5 Transports • WebSocket – only transport that establishes true two way persistent connection • Server Sent Events - EventSource • Comet Transports (makes use of HTTP) • Forever Frame (only IE) • Ajax Long Polling
  • 8. KEY CONCEPTS: TRANSPORTS $.connection.hub.logging = true; • Enable Logging in your code • Opening the Console Window in your web browser
  • 9. KEY CONCEPTS: SPECIFYING A TRANSPORT If you know the client’s capability… connection.start({ transport: 'longPolling' }); If not, always make sure there is a fallback… connection.start({ transport: ['webSockets','longPolling'] });
  • 10. KEY CONCEPTS: SPECIFYING A TRANSPORT •webSockets •foreverFrame •serverSentEvents •longPolling
  • 11. KEY CONCEPTS: CONNECTIONS & HUBS • Persistent Connection • Low-level communication protocol • PersistentConnection class • Hub • High-level pipeline • Allowing clients to call methods on servers • Similarity to .NET Remoting
  • 12. KEY CONCEPTS: HOW HUBS WORK • Server-side calls a method on the client • A packet is sent across (name of method + parameters) • If the parameter is an object, it will be serialized as JSON • Client checks to see if the method exists in client-side coding • If exists, the method is executed using the deserialized parameter data.
  • 13. KEY CONCEPTS: WHEN TO USE PERSISTENT CONNECTION? • The format of the actual message sent needs to be specified. • The developer prefers to work with a messaging and dispatching model rather than a remote invocation model. • An existing application that uses a messaging model is being ported to use SignalR.
  • 15. DEMO
  • 16. TELERIK PROFILE •Since 2002 •Over 1.7 million developers •Developer-focused
  • 17. ABIT ABOUT TELERIK • UI Toolkits – Web Forms, MVC, Silverlight, Kendo UI, WinForms, WPF, UWP (Windows 10), and many more. • Telerik Test Studio – Automated Testing solution (Native Mobile Apps) • Telerik Platform – Cross-platform Mobile App Development & Management • Telerik Sitefinity – Web Content Management System

Editor's Notes

  • #6: Remote Procedural Calls – from your server code, you can call the client code in your web browser WebSocket If you were to code an application directly using WebSockets, you can, but you will then need to write a lot of other code to manage the falling back of the WebSocket. What this means is SignalR will continue to be updated to support changes in the underlying transport, providing your application a consistent interface across versions of WebSocket Transports SignalR is an abstraction over some of the transports required to pass information back and forth the server and client. Starts with HTTP, and will be upgraded to WebSocket whenever available WebSocket is most efficient when it comes down to the use of server memory
  • #8: Server Sent Events: If the browser supports Server Sent Events, which is basically all browsers except Internet Explorer. Forever Frame: Forever Frame creates a hidden IFrame which makes a request to an endpoint on the server that does not complete. The server then continually sends script to the client which is immediately executed, providing a one-way realtime connection from server to client. The connection from client to server uses a separate connection from the server to client connection, and like a standard HTML request, a new connection is created for each piece of data that needs to be sent. Ajax Long Polling: Long polling does not create a persistent connection, but instead polls the server with a request that stays open until the server responds, at which point the connection closes, and a new connection is requested immediately. This may introduce some latency while the connection resets.