-
Notifications
You must be signed in to change notification settings - Fork 14
Tutorials
To help you learn how to build Harmony Core services, we have developed several self-paced tutorials that will teach you everything from basic concepts to advanced techniques.
-
Tutorial 1: Building a Demo Service
Get a Harmony Core OData web service up and running really quickly by following this short tutorial. You will learn how to use the harmonydemo solution template to create a pre-configured demo environment that you can examine and explore.
-
Tutorial 2: Building a Service From Scratch
If you are looking for a lot more detail then this tutorial is for you. You will start by creating a bare-bones environment using the harmonycore solution template, and then you will build a comprehensive Harmony Core OData web service from scratch, step-by-step, in bite-sized pieces. Along the way, we will explain the basic concepts, and how everything fits together. By the end of the tutorial, you will have implemented much of the same functionality that the demo tutorial provided, but you will have the satisfaction of having built the service yourself! There won't be any Traditional Bridge functionality, but don't worry, you can learn how to implement that by following the Implementing Traditional Bridge tutorial.
-
Tutorial 3: Authentication via Custom Code
In this tutorial, you will start with the Harmony Core service that you created during tutorial 1 or tutorial 2. You will then add code-based user authentication to the service. By code-based, we mean that you will have the opportunity to provide custom code to determine which users can be authenticated, and which can not. Authenticated users will have access to your entire service, but unauthenticated users will not be able to access the service at all.
-
Tutorial 4: Implementing Traditional Bridge
So far it's all been about OData, but Harmony Core can do so much more!. In this tutorial, you will switch gears and start to consider code-centric services, where web service endpoints are backed not by generated data access code, but by custom business logic that you write. There are several ways to do this, but in this tutorial, we will focus on using Traditional Bridge, which is a Harmony Core technology that allows you to leverage business logic written in traditional Synergy as part of your Harmony Core web service.
-
Tutorial 5: Unit Testing Generated OData Services
In this tutorial, you will add a new unit testing project to your existing Harmony Core environment, and then alter your code generation settings to cause unit tests to be generated for all of your code-generated OData endpoints.
We're just getting started, and we have several more ideas for future tutorials, some of which you will see listed below. But if you have an idea that you don't see listed here, please get in touch by logging a new documentation issue.
-
Implementing Unit Testing for Harmony Core OData Services
Back to OData. The default Harmony Core environment also includes several CodeGen templates that allow you to generate repeatable unit tests for the OData controllers and endpoints that you generate. This tutorial will walk you through the process of adding a .NET Core unit testing project to your existing Harmony Core development environment. If you are working with our standard sample repository and data then almost everything you will need is already in place, but there will be some additional work required to get Unit testing up-and-running with your own custom data files and endpoints.
-
Incorporating Custom Code
-
xfServerPlus Migration
-
Debugging Traditional Bridge Methods
-
Authentication with an OAuth 2 Server (Azure AD has been requested as an example).
-
Calling Harmony Core web services from traditional Synergy using the [Synergy HTTP API(https://www.synergex.com/docs/versions/v111/index.htm#lrm/14_HTTP_API.htm).
-
Calling Harmony Core web services from .NET using System.Net.WebClient
-
Tutorial 2: Building a Service from Scratch
- Creating a Basic Solution
- Enabling OData Support
- Configuring Self Hosting
- Entity Collection Endpoints
- API Documentation
- Single Entity Endpoints
- OData Query Support
- Alternate Key Endpoints
- Expanding Relations
- Postman Tests
- Supporting CRUD Operations
- Adding a Primary Key Factory
- Adding Create Endpoints
- Adding Upsert Endpoints
- Adding Patch Endpoints
- Adding Delete Endpoints
-
Harmony Core Code Generator
-
OData Aware Tools
-
Advanced Topics
- CLI Tool Customization
- Adapters
- API Versioning
- Authentication
- Authorization
- Collection Counts
- Customization File
- Custom Field Types
- Custom File Specs
- Custom Properties
- Customizing Generated Code
- Deploying to Linux
- Dynamic Call Protocol
- Environment Variables
- Field Security
- File I/O
- Improving AppSettings Processing
- Logging
- Optimistic Concurrency
- Multi-Tenancy
- Publishing in IIS
- Repeatable Unit Tests
- Stored Procedure Routing
- Suppressing OData Metadata
- Traditional Bridge
- Unit Testing
- EF Core Optimization
- Updating a Harmony Core Solution
- Updating to 3.1.90
- Creating a new Release
-
Background Information