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 Data Factory for ETL with .NET Activities

Modern data platforms rarely receive clean, uniform information from a single source. Customer systems, SaaS applications, operational databases, file shares, and event streams all produce data in different formats and at different speeds. An effective ETL process must collect those inputs, apply consistent business rules, and publish reliable datasets for analytics and applications.

Azure Data Factory provides a managed environment for building these workflows. It combines data integration, scheduling, dependency management, monitoring, and connections to a broad range of Azure and external services. When standard connectors and built-in transformations are not enough, a .NET activity allows development teams to bring custom C# logic into the pipeline.

This approach is especially useful for software professionals who already work with the Microsoft ecosystem. Existing libraries, validation rules, encryption routines, and domain-specific code can be incorporated into an Azure-based data workflow without forcing every transformation into SQL or a visual designer.

What Azure Data Factory Brings To ETL

Azure Data Factory, often abbreviated as ADF, organizes data integration around pipelines. A pipeline is a logical group of activities that performs a complete process, such as extracting files from storage, transforming records, loading a database, and notifying an operations team. Activities can run sequentially, in parallel, or conditionally according to the workflow design.

Datasets describe the structure or location of data used by activities, while linked services define connection information for systems such as Azure Blob Storage, Azure SQL Database, SQL Server, Amazon S3, or REST endpoints. Parameters and expressions make these objects reusable across environments and processing dates.

The platform supports both scheduled and event-driven execution. A tumbling-window trigger can process regular time intervals, while a storage event trigger can start a pipeline when a file arrives. Integration Runtime provides the compute and network bridge required to move or process data, including managed Azure infrastructure and self-hosted agents for private networks.

For conventional ETL, ADF can copy data, invoke stored procedures, execute data flows, run notebooks, call Azure Functions, and coordinate external services. Its value comes from orchestration: each operation becomes visible, configurable, retryable, and measurable within a single data pipeline.

How .NET Activities Fit The Pipeline

A custom .NET activity is appropriate when a pipeline needs code that is difficult to express through standard ADF activities. Examples include parsing a proprietary file format, applying a specialized scoring algorithm, validating records against a complex rule set, or using an established C# library that the organization already trusts.

In a typical implementation, the custom activity runs code through Azure Batch. The activity references an executable or package, supplies input and output locations, and uses a linked service to access the Batch account and related storage. ADF remains responsible for orchestration, while the .NET process performs the specialized computation.

The custom program should be designed as a clear data-processing unit rather than as a long-running application. It needs a predictable entry point, explicit input and output arguments, structured logging, and a meaningful exit code. A successful exit code allows the pipeline to continue; a failure should provide enough information for operators to identify the affected file, partition, or business date.

A useful pattern is to keep the .NET application independent from ADF-specific assumptions. Pass configuration through arguments, environment settings, or pipeline parameters, and store large data volumes in Azure Storage rather than attempting to send them directly through activity metadata. This makes the code easier to test locally and easier to reuse in batch, scheduled, or event-based workflows.

Designing Extraction And Transformation Stages

A reliable ETL pipeline separates extraction, transformation, and loading responsibilities. The extraction stage should land source data in a durable location before intensive processing begins. Azure Data Lake Storage Gen2 or Blob Storage can provide a raw zone where the original files remain available for auditing and replay.

The .NET activity can then read from the raw zone, validate the structure, normalize fields, and write transformed output to a curated zone. For example, a C# process might convert multiple vendor-specific JSON formats into a common schema, standardize dates and currencies, reject malformed records, and produce a separate error file for review.

Large data workloads require attention to partitioning. A single activity that processes millions of records in one operation can become slow and difficult to recover. Partitioning by date, customer group, file, or hash range allows ADF to execute multiple activity instances in parallel. The custom application must be safe for concurrent execution and must avoid writing to the same temporary or output path without coordination.

Idempotency is equally important. If a pipeline retries after a network interruption, the second attempt should not duplicate records or corrupt the destination. A .NET activity can write to a staging path, validate the result, and perform a controlled move or merge after successful processing. Destination tables can use business keys, batch identifiers, or merge logic to protect against repeated delivery.

Selecting The Right Execution Pattern

A custom .NET activity is powerful, but it should be chosen for a clear reason. Native ADF activities generally require less operational management, while custom code offers greater flexibility at the cost of packaging, runtime management, and application support.

Execution option Best suited for Main strengths Important considerations
Copy activity Moving data between supported systems Fast setup, many connectors, scalable transfer Limited transformation logic
Mapping Data Flow Visual transformations over structured data Managed Spark-based processing, low-code design Cost and startup time can matter
Stored procedure activity Database-side transformations Uses existing SQL logic and transactions Tied to database capacity and dialect
Azure Function activity Short, event-oriented operations Simple deployment and serverless execution Execution duration and resource limits
Custom .NET activity Specialized C# processing or proprietary rules Reuses libraries and full programming control Requires packaging, testing, and Azure Batch management
Databricks or notebook activity Large-scale analytical processing Strong support for distributed data engineering Adds workspace and cluster administration

The best design often combines several options. ADF Copy Activity can land source data, a .NET activity can handle proprietary parsing, Mapping Data Flow can apply broad relational transformations, and a stored procedure can perform a final database merge. This division keeps each stage aligned with the technology best suited to it.

Teams should also consider whether custom logic belongs in the pipeline at all. If a transformation is simple filtering, projection, joining, or aggregation, a built-in activity may be easier to operate. Custom C# becomes more compelling when the business rules are complex, the input is unusual, or an existing .NET component substantially reduces development time.

Managing Configuration, Security, And Reliability

Configuration should be separated from code. Pipeline parameters can carry source paths, processing dates, and environment-specific values, while Azure Key Vault can protect connection secrets. Linked services should use managed identities where supported, reducing the need to embed usernames, passwords, or storage keys in JSON definitions.

The custom application needs the same security discipline as any other cloud service. Grant the Batch pool, Data Factory managed identity, and storage accounts only the permissions required for their tasks. Avoid broad contributor roles when a narrowly scoped data reader or writer role is sufficient. Network rules, private endpoints, and self-hosted Integration Runtime may be necessary when data sources are not publicly reachable.

Retry policies should distinguish transient failures from permanent data errors. A temporary storage timeout may justify several retries with increasing intervals. A schema violation should usually stop the relevant branch and preserve the rejected input for investigation. Treating every error as retryable can waste compute and delay detection of bad source data.

Operational reliability also improves when pipeline runs carry a correlation ID or batch ID. The identifier can be passed into the .NET activity, included in log messages, written to output metadata, and stored with load records. Operators can then trace one business batch across ADF monitoring, Azure Batch logs, storage files, and destination tables.

Observability And Testing Across Environments

ADF monitoring shows activity status, duration, queue time, retry count, and failure details. That information is valuable, but custom applications should produce their own structured logs. Include the processing unit, source path, record counts, rejected-record count, elapsed time, and output location. Avoid logging sensitive data or complete payloads.

Testing should cover both the C# application and the orchestration layer. Unit tests can verify parsing, validation, mapping, and error-handling rules with representative data. Integration tests can run against disposable storage containers or test databases. Pipeline tests should confirm parameter passing, dependency behavior, retry settings, branching, and failure notifications.

Separate development, test, and production resources. Infrastructure-as-code or automated deployment tools can promote linked services, datasets, pipelines, and activity packages while applying environment-specific configuration. Version the .NET executable with the pipeline definition so that a historical run can be reproduced using the same processing logic.

Performance testing should use realistic file sizes and concurrency levels. Measure cold-start delays, Batch pool provisioning, memory consumption, throughput, and destination write speed. A solution that works for a small developer sample may require partitioning, pre-warmed pools, or a different execution pattern at production scale.

Practical Guidance For A Production-Ready Design

A maintainable implementation treats the pipeline and the .NET application as one coordinated product. The orchestration layer should explain when and why code runs, while the application should explain what happens to each input and how failures are represented.

Use the following practices when preparing an Azure Data Factory ETL workflow:

  • Define raw, rejected, staged, and curated storage locations with clear naming conventions.
  • Pass parameters instead of hard-coding dates, paths, account names, or environment settings.
  • Make each processing unit idempotent so retries do not create duplicate output.
  • Record row counts, validation results, batch identifiers, and processing duration.
  • Use managed identities, Key Vault, private networking, and least-privilege permissions.
  • Package and version the .NET activity together with its dependencies and deployment metadata.

A strong design also establishes data quality expectations before implementation. Decide which fields are mandatory, how invalid records are handled, what thresholds should fail a batch, and how corrections are replayed. These rules should be visible in both the C# validation code and the pipeline monitoring process.

For teams attending a technology conference focused on Azure, .NET, DevOps, and data engineering, this pattern offers a practical bridge between application development and cloud integration. Developers can retain familiar C# engineering practices while gaining managed scheduling, centralized monitoring, and scalable execution from Data Factory.

Azure Data Factory is most effective when it coordinates specialized components rather than attempting to perform every task itself. Use native connectors for movement, managed transformations for common shaping, databases for set-based operations, and custom .NET activities for logic that genuinely benefits from application code.

Build a small end-to-end pipeline with representative source data, package the C# processor, secure its connections, and monitor a complete run from ingestion through delivery. Then expand through parameterization, partitioning, automated tests, and deployment pipelines. This progression turns a custom ETL experiment into a dependable Azure data 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