New to site?


Lost password? (X)

Already have an account?


(X)

Presents

#CSHARPCON20

The C# Corner Annual Conference 2020 is a three-day annual event for software professionals and developers.

3
DAYS
72
SPEAKERS
65
SESSIONS

Magnus Mårtensson
Microsoft Regional Director, Azure MVP, CEO Loftysoft

Avirag Jain
Director & CTO R Systems

Mahesh Chand
Founder C# Corner, CEO Mindcracker

Chris Gali
CEO & Co-Founder Graphite

Subinder Khurana
Chief Architect StoryProcess, Founder NASSCOM DeepTech Club

Bryan Rishforth
Investor, Chairman Graphite

Bryn Everson
Director Biz Dev Graphite

Raj Tiwari
Digital Transformation Leader, Futurist and Visionary

Joseph Guadagno
Microsoft MVP, Lead Quicken Loans

Nikita Sachdev
Entrepreneur, Blockchain Enthusiast & Advisor, Social Media Influencer

Doug Wagner
COO & Founder Adapt Technical Group

Ritesh Modi
Architect, Senior Evangelist, Cloud Architect

Crystal Wenrick
Director Communications Mindcracker

Allen O’Neill
Microsoft MVP, Consulting Engineer/Architect

Praveen Kumar
CEO MCN Solutions

Chris Love
Founder Love2Dev, Microsoft MVP, Author

Sanjay Vyas
Microsoft Regional Director, Microsoft MVP, Founder & CEO SkillLabs Technologies

Veena Sarda
Deep Learning Consultant, Author

Sekhar Srinivasan
C# Corner MVP, Microsoft Certified Trainer, Pluralsight Author

Lalit Bansal
Founder & CEO - EIY SYS

Navdeep Garg
CEO Revinfotech

Prakash Tripathi
Tech Manager/Leader, Microsoft MVP, Blogger

Bhavna Jain
Breakthrough Consultant

Naveen Sharma
Enterprise Architect, Leadership Coach, Author

Vidya Vrat Agarwal
Principal Architect, Microsoft MVP, Author

Sheetal Agarwal
Founder Clownselors, Medical Clown, Trainer

Abhishek Kant
Founder GTM Catalyst

Vishnu Saran
Founder & CEO VoiceQube

Sandeep Soni
Founder & CEO Deccansoft, Microsoft Certified Trainer

Parveen Malik
AVP InfoSec & Vulnerability Management, Information Security Expert

Nitin Pandit
Microsoft MVP, Developer Evangelist, Author

Niloshima Srivastava
C# Corner MVP, Tech Architect, Trainer, Blogger

Bala Chirtsabesan
Senior Software Engineer at Microsoft, Author

Manoj Mittal
Sr. Technical Architect, C# Corner MVP, Author

Chandni Di
Co-Founder Voice of Slum

Vithal Wadje
Technical Lead, Microsoft MVP, Author

Shivam Ahuja
Founder SkillCircle, Business Mentor

Chervine Bhiwoo
Solution Architect, Microsoft MVP, Author

Saurabh Jain
Vice President Paytm, Founder Fun2Do Labs, Author

Vinay Solanki
Head IoT at Lenovo, Founder IoT-NCR

Anshu kumari
Founder Blockchainkids, Inventor, Trainer

Amit Singal
CEO Startup Buddy

Dev Pratap
Co-Founder & CEO Voice of Slum

Amey Vartak
Technology Consultant, Full Stack Developer, C# Corner MVP, Author

Viswanatha Swamy
Principal Software Engineer, C# Corner MVP, Author

Sanket Verma
Research Engineer @ Ballistics (Forensics) and Chair, PyData Delhi

Sourabh Somani
Lead Developer, Microsoft MVP, Author

Abhishek Mishra
Software Architect, C# Corner MVP, Author

Siddharth Vaghasia
Technical Consultant, C# Corner MVP, Blogger

Bassam Alugili
Senior Software Specialist, Database Expert

S Ravi Kumar
Solution Architect, C# Corner MVP, Author

Sundaram Subramanian
Full Stack Developer, C# Corner MVP, Speaker

Deepesh Somani
Solution Architect, Microsoft MVP, Author

Debasis Saha
Technical Project Manager, C# Corner MVP, Blogger, Author

Vipul Jain
Software Architect, C# Corner MVP, Author

Akshay Patel
Technical Architect, Microsoft Certified Trainer, C# Corner MVP, Author

Stephen Simon
RPA Developer, Evangelist, Author

Vivek Sharma
Founder Kingster636, AR/VR Specialist

Jeetendra Gund
Technical Lead, C# Corner MVP, Author

Sujal Beniwal
AI Enthusiast, Student

M Viknaraj
Microsoft MVP, Azure Architect, Author

Prasham Sabadra
Software Architect, C# Corner MVP, Trainer, Author

Aakash Maurya
Senior Developer, C# Corner MVP, Speaker

Ankit Sharma
Senior Software Engineer, C# Corner MVP, Author

Mangesh Gaherwar
Team Lead, C# Corner MVP, Author

Viral Jain
Technical Consultant, C# Corner MVP, Author

Bhasker Das
Solution Architect, Evangelist

Manish Dwivedi
Associate Project Manager

Ck Nitin
Programmer, Author

Rohit Gupta
Technical Trainer, Author

Manish Tewatia
Full-stack Marketer, UX Designer

Bhavya Gaur
Technical Illustrator

Rohit Tomar
SEO/SMO Expert

Web Track

Cloud & Data Track

Dev Track

8am-9am

Registration & Breakfast

9am-10am

Future of Desktop Apps with JS (ElectronJs)

Nitin Pandit

Building Serverless Microservices Using Microsoft Azure

Vithal Wadje

Innovating RPA: A Robot for Every Person

Stephen Simon

10am-11am

Managing Cloud Storage Accounts using Logic Apps

Viknaraj Manogararajah

Data visualization using Python

Sekhar Srinivasan

Going Cross platform with AR Foundation

Vivek Sharma

11am-12pm

Keynote

12pm-1pm

Managing your Azure dependencies in ASP.NET Core apps using VS

Bala Chirtsabesan

Securing Applications on Intelligent Azure

Abhishek Mishra

Getting started with Blazor the Framework of Future

S Ravi Kumar

1pm-2pm

Lunch

2pm-2:45pm

Build Progressive Web Apps using Angular 9

Debasis Saha

Build and deploy to any platform using Azure DevOps

Chervine Bhiwoo

Deep Dive in Azure Service Bus

Akshay Patel

2:45pm-3:45pm

Build a Native Mobile Application using React Native and JavaScript

Joseph Guadagno

Making sense of Web Job, Web Job SDK and Functions in Azure

Prakash Tripathi

CloudFront Distribution in AWS

Viral Jain

3:45pm-4pm

Tea Break

4pm-4:30pm

Introduction to PowerBI

Aakash Maurya

Build Advanced SPFx solutions with React and Graph API

Siddharth Vaghasia

Build Business Intelligence Analyst (BIA) Skills

Sundaram Subramanian

4:30pm-5pm

Deep dive of Power Platform – AI BUILDER

Prasham Sabadra

Panel 1

What's new in SharePoint development

Vipul Jain

5pm-5:30pm

Build a SSO (Single Sign On) based Native JavaScript application with Microsoft Identity within 10 minutes

Manoj Mittal

Panel 2

Applications and working of AI

Veena Sarda

5:30pm-6pm

Deploying serverless API's with .Net core 3.0 on AWS & Azure

Amey Vartak

Panel 3

Blockchain with .NET Core (Ark)

Anshu Kumari

6pm-6:30pm

Closing Note & Prize Distribution

Dev Track

Cloud Track

Architecture Track

Emerging Tech Track

8am-9am

Registration & Breakfast

9am-10am

Creating Full-Stack Web Apps Using Server-Side Blazor

Ankit Sharma

Real time face recognition with MS Cognitive Services

Niloshima Srivastava

Building Scalable APIs with GraphQL

Jeetendra Gund

Future of development with AI and Blockchain

Navdeep Garg

10am-11am

Debugging Tips and Tricks with Visual Studio 2019

Joseph Guadagno

Azure Containers

Abhishek Kant

Enterprise Architecture

Naveen Sharma

Bot Framework - learn it fast and look like a boss!

Allen O’Neill

11am-12:30pm

Keynote

12:30pm-1:30pm

.Net Core & C# 8 Performance

David McCarter

Working with Azure kubernetes services

Ritesh Modi

Becoming an Architect

Vidyavrat Agarwal

Why Techies Need to Learn Product Management

Saurabh Jain

1:30pm-2:30pm

Lunch

2:30pm-3:30pm

Build a rules engine in .Net Core

Sanjay Vyas

Building CI and CD Pipeline using Azure DevOps

Sandeep Soni

Entity Framework Core - Tips and Tricks, Performance Optimization, and Tuning

Bassam Alugili

Hacking your way into Data Science

Sanket Verma

3:30-4:15pm

Speed up your .Net Core Website

Sourabh Somani

Azure

Magnus Mårtensson

Demystifying Open Distro for Elasticsearch

Suman Debnath

Future of Data

Shivam Ahuja

4:15pm-4:30pm

Tea Break

4:30pm-5:15pm

gRPC with C# and .Net Core

Mangesh Gaherwar

Panel 1

Essentials of Cloud security

Parveen Malik

Power platform and Dynamics 365

Deepesh Somani

5:15pm-6pm

Microservices - the gRPC Way

Viswanatha Swamy

Panel 2

Reserved

Reserved

6pm-6:30pm

Closing Note & Prize Distribution

Building a real-time dashboard with SignalR and C#

Real-time dashboards have moved from luxury to necessity across Australian enterprises. Sydney fintechs monitor live mortgage approvals, Brisbane logistics providers track long-haul trucks crossing the NSW-Queensland border, and energy traders follow the Australian National Electricity Market in seconds. The shift from batch reports to live visualisations reflects an expectation that data should arrive at the speed of decision making, whether you are watching an assembly line in Melbourne or bushfire alerts for a regional council.

SignalR sits in a comfortable spot for .NET developers who need bidirectional communication between servers and browsers without hand-rolling WebSocket upgrades. The library negotiates transport automatically, falls back gracefully when older browsers drop the protocol, and integrates with dependency injection the way an ASP.NET Core developer expects. For teams already running C# in production, adopting SignalR feels more like extending an existing skill set than learning a parallel stack, particularly when the deadline is driven by end-of-financial-year reporting.

This walkthrough assumes you are comfortable with C# 10 or later on a working ASP.NET Core 8 project. We will look at hub design, client subscriptions, scaling out across Australian data centres, and the usability touches that turn a wall of blinking numbers into something a shift supervisor actually trusts. The aim is a dashboard that updates in well under one second and degrades politely when bandwidth gets patchy, whether the user is in a Perth CBD office or tethered through regional mobile coverage in the Pilbara.

Comparing real-time transport options

Approach Transport fallback Bidirectional Server complexity Best fit
SignalR WebSocket, SSE, long polling Yes Low C# and ASP.NET Core apps
Raw WebSockets WebSocket only Yes High Custom protocols
Server-Sent Events HTTP streaming One-way Medium Pricing tickers, news feeds
Long polling HTTP only One-way Low Legacy browsers
gRPC streaming HTTP/2 Yes Medium Service mesh communication

For an Australian compliance officer comparing transport overhead during a network audit, these columns usually justify SignalR. Raw WebSockets and gRPC need careful proxy traversal, which becomes painful when frontline workers use devices locked down by corporate policy and tunnelled through Melbourne-headquartered security stacks. SSE is fine for one-way price tickers but cannot push commands back, ruling out the click-to-refresh interactions finance teams often request.

Long polling still earns a place when the network path is hostile, for instance inside a steel mill where the plant firewall blocks anything fancier than repeated GETs. Pick the row that matches your network realities rather than the row that matches your enthusiasm. The remainder of this article assumes SignalR, but the patterns translate well elsewhere.

Designing hubs and DTO contracts

SignalR hubs are not much more than RPC endpoints, but the contracts you define quietly shape the client experience. Use strongly typed hubs with Task-returning methods so client code gets IntelliSense in Visual Studio and stack traces stay readable. Keep the payload small, ship a version number on every message, and agree on a timestamp format. DateTimeOffset serialised in ISO 8601 is the safe default because it survives trips through nodes hosted across AEST, ACST and AWST without off-by-one-hour bugs.

For multi-tenant dashboards, group features become your best friend. A mine in Kalgoorlie only wants its shift's conveyor-belt metrics, while a Melbourne retailer wants store-level granularity. Clients.Group(tenantId).SendAsync(...) keeps traffic scoped without resorting to per-connection routing logic. Combine that with a publishing service that fans updates out from a background queue, and you have a hub that stays responsive even when the upstream ERP system is having a rough morning.

Schema evolution is the unglamorous discipline that pays off two years later. Once you commit a hub method to production, you cannot remove a property without flagging warnings in rolling deployments. Add new fields, never rename existing ones, and ship a small payload diff rather than the full state on every tick. The high-throughput Cosmos DB review walks through partitioning strategies that pair well with this pattern, which is why the combination shows up across Sydney financial services teams.

Rendering speed on the client side

A dashboard that updates twenty times per second is useless if the chart library freezes the main thread while redrawing. Stick to canvas-based renderers, or use libraries such as Chart.js with animation: false, and opt for incremental updates over full repaints. Keep the state of each tile in a small store, perhaps a Redux slice or a simple BehaviorSubject in an Angular project, and let only the affected cells repaint. Watching a Sydney trading floor demo where the lag between event and screen is below two hundred milliseconds reminds you why those small investments in rendering hygiene matter.

Avoid fetching data twice. The hub should be the single source of truth, and the initial state load should be served through a normal REST or GraphQL endpoint that the hub later enhances. This split also helps with the Notifiable Data Breaches scheme, because the bulk personal data in the initial snapshot tends to be the only piece the regulator wants tagged and audited. All incremental updates flowing through the hub are anonymised counts and aggregates, which keeps the privacy footprint narrow.

Accessibility matters even on speed-critical dashboards. Provide a button that announces the latest value through the screen reader, respect prefers-reduced-motion, and keep contrast ratios high enough for the Australian sun pouring through a north-facing window in a Parramatta office. A bored operator who cannot read the screen will eventually stop trusting it, and that is a worse outcome than a CPU spike.

Scaling out with the Azure backplane

A single ASP.NET Core process can comfortably host a few hundred concurrent hub connections, which is plenty for a regional rollout but not enough for an ASX-listed company during end-of-day reporting. The recommended pattern is to add the Azure SignalR Service as a managed backplane so each app server speaks to a central relay instead of gossiping state between nodes. Reconnection storms become the backplane's problem, not yours, which is a quiet relief at three in the morning.

The handshake between ASP.NET Core and the Azure relay is straightforward. Configure the connection string, replace the in-process AddSignalR() call with AddSignalR().AddAzureSignalR(), and verify that the negotiation endpoint returns the relay URL. From there, attach Application Insights to surface slow fan-outs and use Azure Monitor to alert when the connection count breaches thresholds that matter for your licensing tier. Tie alerts into the on-call roster for your operations team, including the after-hours escalation list for the Sydney NOC if you host in Australia East.

SignalR does not own the data, it just pushes it, leaving you free to choose a store that matches your read patterns. The Cosmos DB change feed pattern complements SignalR nicely for any team publishing updates from an event-sourced pipeline rather than polling a SQL view. The pairing is becoming a default recipe in financial services across Sydney and Melbourne under APRA's CPS 234 regime that expects an immutable audit trail of operational risk decisions.

Observability, throttling and the human side

Both silent and runaway dashboards deserve their own monitoring views. Wire your hub to OpenTelemetry, emit metrics for inbound messages, outbound messages, average client latency, and reconnection rate, then ship those numbers to whatever observability tool your team already runs. Datadog, New Relic and Application Insights all consume SignalR telemetry through OTel exporters with minimal custom code, which means the SRE rotation in Brisbane gets the same view they have for the rest of the stack.

Throttling is where SignalR shows its maturity. Configure client timeouts generously, but enforce server-side rate limits per connection so a runaway loop on the client cannot drain CPU on the hub. ConcurrentMessageLimit and manual SemaphoreSlim checks around expensive hub methods keep a single bad client from degrading the experience for everyone else on the same app instance. The pattern feels heavy until you see the first rogue browser tab in a regional call centre lock up the floor manager's display, and you remember why you wrote it.

User-facing throttling matters too. When the upstream system slows down, do not just stop pushing updates. Push a "stale" indicator so the operator knows the number on screen has not been refreshed for fifteen seconds. That small visual cue is the difference between a confident decision and a confusing one, and it is far easier to defend in a post-incident review under the Privacy Act 1988 than a screen that quietly shows yesterday's totals. The Office of the Australian Information Commissioner tends to be less bothered by visible staleness than by invisible deception.

Deployment patterns and rollout playbook

Hosting inside Australian data centres is non-negotiable for many of the workflows we have discussed. Both Azure Australia East and Azure Australia Southeast regions offer the SignalR Service, and most enterprises standardise on Australia Central for regulated workloads because of its compliance certifications. Pin your deployments there, store container artefacts in the matching ACR, and document the data sovereignty story in your security pack, particularly if you handle health data covered by the My Health Records Act.

For AWS or GCP teams, the managed equivalents (API Gateway WebSocket APIs, Firebase Realtime Database) work but require a small adapter layer because the connection lifecycle does not match SignalR's. On-prem deployments remain common in mining and defence, where a single hub running on a hardened Windows Server box is often more reliable than a satellite link from a Pilbara camp. Schedule heavy rebuilds for the Sunday evening window, push client updates through a service worker so users pick them up between shifts, and treat the hub as a stateful service with rolling restart and drain time.

A few practical habits carry the project across the finish line, especially when the team is distributed across Sydney, Melbourne and the regions.

  • Start with a single screen and a tightly bounded scope, then expand once the network is trusted.
  • Negotiate the SignalR transport in development with throttled bandwidth to expose hidden latency assumptions.
  • Back every hub method with an integration test that connects, sends, and asserts within a strict timeout.
  • Pin the dashboard to Australian data centre regions and document the data residency position in plain English.
  • Treat stale data as a first-class state on the screen, not as an afterthought in the bug tracker.

The Leela Ambience Convention Hotel

1, CBD, Maharaj Surajmal Road, Near Yamuna Sports Complex, Delhi, 110032

KNOW MORE

GENERAL QUERIES


Manish Tewatia

+91-9718-431-042

TICKET QUERIES


Atul Gupta

+91-9910-125-804