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

Using Azure Cosmos DB for Globally Distributed .NET Applications

Modern .NET applications often serve customers from several regions, yet users still expect fast responses, consistent business behavior, and uninterrupted access. A single database location can turn into a performance bottleneck when traffic crosses continents. Azure Cosmos DB addresses this problem by combining a globally distributed database engine with APIs, SDKs, and operational controls suited to cloud-native workloads.

For developers building with ASP.NET Core, .NET services, background workers, or event-driven systems, Cosmos DB provides more than geographic replication. Its data model, partitioning strategy, consistency options, throughput model, and regional failover capabilities all influence application design. The best results come when those decisions are made alongside the domain model rather than added after the first deployment.

The technology also fits naturally into the wider Microsoft Azure ecosystem. Application code can use managed identities, Azure Functions, Service Bus, Application Insights, and deployment pipelines while Cosmos DB handles globally replicated data. Understanding the trade-offs makes it easier to build a system that is responsive in production without creating unnecessary cost or operational complexity.

Why global distribution matters for .NET workloads

Network distance affects every request. A user in Singapore may experience a noticeable delay when an API hosted in Europe performs a database operation in the same European region. Even a well-optimized query cannot remove the physical distance between the client, application service, and data store. Replicating data close to application instances reduces this latency and supports a more predictable user experience.

Azure Cosmos DB supports multi-region writes and reads, allowing applications to use one or several Azure regions. A .NET application can connect through the Azure Cosmos DB SDK and select a preferred region for read operations. The SDK can then route requests toward an available location, reducing the need to write custom geography-aware connection logic.

Global distribution is especially useful for customer profiles, product catalogs, user preferences, telemetry, and collaboration data. These workloads commonly require high availability and rapid access from many locations. However, replication does not automatically solve every consistency problem. Business rules must define which values can be slightly stale and which operations require stronger guarantees.

Model data around access patterns

Cosmos DB supports document-oriented storage, making it a natural choice for JSON-based aggregates. A .NET record or class can represent a customer, order, device, or session, and the SDK can serialize it directly. This approach works well when the application usually retrieves an aggregate as a whole rather than joining many normalized tables.

A practical model begins with the queries the application must perform. If an order is generally loaded by customer and order identifier, those fields should guide the document shape and partition strategy. Embedding small, tightly related collections can reduce round trips, while separating large or independently changing data can prevent documents from becoming unwieldy.

Cross-partition queries are supported, but they may consume more request units and introduce additional latency. That does not mean every query must include the partition key, yet frequent cross-partition operations deserve careful review. A design that looks elegant in a relational diagram can become expensive if its common API requests scan many logical partitions.

The .NET SDK also supports LINQ, parameterized SQL queries, transactional batch operations, and optimistic concurrency through entity tags. These tools help developers preserve familiar programming patterns while adapting to a distributed document database. Good domain modeling remains essential because the database cannot compensate for unclear ownership of data or poorly defined update behavior.

Choose partition keys before scaling

The partition key determines how Cosmos DB distributes data and workload. A strong key has high cardinality, spreads requests evenly, and appears frequently in application operations. Examples might include tenant ID, customer ID, or a carefully selected geographic identifier. The right option depends on the workload, not on a universal rule.

A tenant key can be effective for a business application where customers operate independently. It keeps related documents together and may simplify authorization checks. However, a very large tenant can create a hot partition if most requests target that single value. In high-volume systems, a hierarchical or synthetic strategy may distribute activity more evenly.

Partition-key decisions are difficult to change after data and traffic patterns become established. Developers should estimate document growth, request frequency, and the busiest tenants before production deployment. Load testing with realistic traffic is more valuable than testing only average request volume because uneven access is often the source of throttling.

Request units, commonly called RUs, measure the work required for database operations. Point reads using an item identifier and partition key are usually efficient. Queries that sort, filter across partitions, or retrieve large payloads consume more resources. Keeping documents focused, selecting only necessary properties, and avoiding unnecessary scans can significantly improve efficiency.

Balance consistency with availability

Cosmos DB offers several consistency levels, including strong, bounded staleness, session, consistent prefix, and eventual consistency. Each level represents a different balance between read freshness, latency, throughput, and regional availability. Session consistency is often a practical default for user-facing .NET applications because a user can reliably read their own recent writes within a session.

Strong consistency is appropriate when an application must observe the latest committed value, such as a tightly controlled financial or inventory operation. It can impose geographic and availability constraints, particularly when regions are far apart. Using it everywhere may increase latency for workloads that could safely tolerate brief replication delay.

Eventual consistency can work well for social activity, recommendations, analytics dashboards, and content that does not require an immediate global view. Bounded staleness offers a middle ground by limiting how far a read may trail behind writes. The selection should be made per workload and business rule rather than treated as a database-wide ideology.

Application need Suitable approach Design consideration
A user must see a recent profile update Session consistency Route reads through the user’s preferred region
Inventory or account values require the latest state Strong or carefully scoped transactional logic Review latency and multi-region availability
Feeds, recommendations, and dashboards tolerate delay Eventual or bounded staleness Optimize for throughput and global responsiveness
Related items must change together Transactional batch within one logical partition Keep all affected documents under the same partition key
Regional continuity is essential Multi-region reads and writes Define conflict resolution and test failover behavior

Handle writes, conflicts, and failover

Multi-region writes allow applications to accept updates in several locations. This can reduce write latency for globally distributed users, but concurrent edits may produce conflicts. Cosmos DB provides conflict resolution policies, including last-write-wins and custom resolution approaches for supported APIs. The correct choice depends on whether newer timestamps truly represent the desired business outcome.

For example, a last-write-wins policy may be acceptable for a user’s display preference but unsafe for inventory reservations. In the latter case, the application may need an idempotent command model, a single logical owner for a particular operation, or a process that records competing updates for review. Database replication should not be mistaken for domain-level conflict management.

The Azure Cosmos DB .NET SDK includes retry behavior for transient failures and throttling responses. Developers should configure connection modes, preferred regions, retry limits, and cancellation tokens based on the application’s latency objectives. Excessive retries can lengthen requests and amplify pressure during an outage, so retry policy must have clear boundaries.

Observability completes the failover design. Application Insights, structured logs, dependency tracking, and Cosmos DB metrics can reveal regional latency, request-unit consumption, throttled requests, and failed operations. Teams familiar with cloud automation may also benefit from adjacent .NET workflow material such as RPA integration patterns, especially when distributed applications exchange data with business process automation systems.

Secure and operate the platform

Security begins with identity. Rather than placing account keys in configuration files, a .NET application can use Microsoft Entra ID and managed identity to obtain access through Azure role assignments. Key Vault can protect any remaining secrets, while private endpoints and network controls can limit exposure to trusted application networks.

Authorization should exist at both the application and data-access levels. A tenant-aware service must validate the caller’s tenant before constructing a partition-key query. Relying solely on a client-provided tenant identifier can expose data if the API does not derive and verify that value from authenticated claims.

Cost management requires visibility into both provisioned and consumed throughput. Autoscale can accommodate changing demand, while serverless capacity may suit sporadic workloads. Neither mode removes the need to optimize queries and document sizes. Monitoring RU consumption by operation helps identify inefficient endpoints before they become expensive at global scale.

Infrastructure as code makes regional deployments repeatable. Bicep, ARM templates, Terraform, or automated Azure CLI workflows can define accounts, databases, containers, indexing policies, regions, private networking, and diagnostic settings. A deployment pipeline should test configuration changes and confirm that new regions receive the intended data and access permissions.

Practical design checks

  • Identify the busiest access patterns and include the partition key wherever practical.
  • Measure latency and RU consumption from each target Azure region using production-like data.
  • Choose consistency per business capability instead of applying the strongest level everywhere.
  • Make commands idempotent so retries and regional failover do not duplicate side effects.
  • Test backup recovery, regional outages, throttling, and conflict behavior before launch.

Prepare a production-ready architecture

A successful Cosmos DB implementation is an application architecture decision, not simply a storage migration. The API design, domain boundaries, partition key, consistency level, regional topology, and monitoring strategy must support the same business goals. When these pieces align, .NET teams can deliver low-latency experiences without building a separate database stack for every geography.

Start with a representative workload: model the main documents, implement a few real queries with the Azure Cosmos DB SDK, and measure them under concurrent traffic. Then test regional reads, failover, retries, conflict scenarios, and cost behavior. This evidence will produce better decisions than relying on default settings or benchmark results from unrelated data.

Use the conference’s Azure and .NET learning resources to deepen the design, then turn the concepts into a small working prototype. Validate its partitioning, consistency, security, and operational behavior with realistic scenarios before expanding it into a globally distributed production service.

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