Nebraska.Code() Sessions tagged c#

What's New in C#7 (and Coming in C#8)

C# is an open-source, mature object oriented language, used by millions of .NET developers, yet its evolution is still underway. In this session, we'll cover the latest features that have been added to C#7 and how they work in detail so you'll know when to use them effectively in your new .NET projects. You'll also see the direction C# may be going with C#8 and beyond.

Speaker

Jason Bock

Jason Bock

Practice Lead, Magenic

Best Practices for Robust API development in .NET

This all-day workshop will walk developers through the design and implementation of a robust API layer using Visual Studio 2017, C#, and the ASP.NET Core stack. Today's client-centric architectures frequently involve a mix of UI frameworks such as Angular, React, or even native mobile apps targeting iOS, Android, or Windows devices. One common requirement for each of these modern application frameworks is the need to communicate data back to the server via an easily accessible API layer. As developers who frequently work on both the API and the client, the overall development process needs to support the ability to quickly add code to both layers and to have an efficient debugging experience.

This class will walk all attendees through designing such an API on the Microsoft stack that is flexible, easy to debug, easy to extend, and supports a number of advanced features commonly required by today's architectures. As the class progresses we will work through the full implementation of a secure API that demonstrates a wide variety of real-world scenarios. We will discuss and demonstrate a clean, back-end architecture isolating all data access into an organized repository layer utilized by higher-level business services. We will also demonstrate how this API can be utilized across a number of UI frameworks including an SPA written in Angular and a cross-platform mobile application developed in Xamarin. The focus will be on setting up an efficient development process between these clients and the API. All students will be encouraged to implement all features locally and the overall content will be presented in a very "hands on" manner. All code and sample projects will also be provided via a public GitHub repository so that attendees can leverage the core concepts in their own projects upon completion of the course.

API topics to be covered and demonstrated include:

  • API Structure and Architectural Considerations
  • Security
  • Json Serialization
  • Visual Studio Project Setup
  • Dependency Injection
  • ViewModels and Mapping
  • API Documentation
  • Caching
  • Data Access Patterns
  • State Management
  • Versioning
  • Debugging APIs
  • Unit Testing APIs
  • Deployment and Hosting

Speaker

Kevin Grossnicklaus

Kevin Grossnicklaus

President, ArchitectNow

Using Async / Await in C# as Designed

The syntax for Async / Await in C# is straightforward but the underlying mechanics are not. This deep dive will help you to understand those mechanics so you can be a true wizard with Async / Await in C#. While discussing a number of code examples we’ll touch on various topics including: Task-Based Asynchronous Programming, System.Threading.Task, ExecutionContext, Synchronization Context, ConfigureAwait, Task debugging, TaskCompletionSource and AsyncLocal.

Speaker