/FoxOffice

Sample application demonstrating how to build a distributed cloud .NET Core application based on CQRS and Event Sourcing.

Primary LanguageC#MIT LicenseMIT

FoxOffice

CQRS Sample Program

This sample program shows how to build a distributed cloud .NET Core application based on CQRS and Event Sourcing.

Apps

Architecture

Architecture

How to execute the applications locally

Install and run Azure storage emulator and Cosmos DB emulator

Create a local settings file for the function app

Create local.settings.json file in the directory ./source/FoxOffice.Processor to execute the function app on local machine.

{
  "IsEncrypted": false,
  "Values": {
    "AzureWebJobsStorage": "UseDevelopmentStorage=true",
    "FUNCTIONS_WORKER_RUNTIME": "dotnet"
  },
  "ConnectionStrings": {
    "Storage": "UseDevelopmentStorage=true"
  },
  "Messaging": {
    "Storage": {
      "QueueName": "messages"
    }
  },
  "Domain": {
    "Storage": {
      "EventStoreTableName": "FoxOfficeEventStore"
    }
  },
  "ReadModel": {
    "CosmosDb": {
      "Endpoint": "https://localhost:8081",
      "AuthKey": "C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==",
      "DatabaseId": "FoxOfficeDatabase",
      "CollectionId": "FoxOfficeCollection"
    }
  }
}

Open the solution

Open the solution ./source/FoxOffice.sln in Visual Studio.

If Visual Studio is not installed on your local machine you can download Visual Studio community edition here. It's free for students, open-source contributors, and individuals.

Set startup projects

  1. Select the menu 'Project' > 'Set Startup Projects...'.
  2. Select 'Multiple startup projects' radio button.
  3. Select Action of 'FoxOffice.Processor' to 'Start'.
  4. Select Action of 'FoxOffice.Api' to 'Start'.
  5. Select Action of 'FoxOffice.Admin' to 'Start'.

Start debugging

Select the menu 'Debug' > 'Start Debugging'.