This application creates various printable reports used or provided by the Georgia EPD Air Protection Branch.
The Air Reports application is written using .NET 7.
The solution contains four projects:
- Domain - A class library containing the data models and business logic.
- LocalRepository - A class library implementing the domain repositories using sample data for use in local development.
- Infrastructure - A class library implementing the domain repository using a SQL Server database.
- WebApp - The front end web application.
There are also corresponding unit test projects.
Configure the app when running locally by adding a DevOptions
section to an app settings file:
{
"DevOptions": {
"UseLocalData": true,
"UseLocalAuth": true,
"LocalAuthSucceeds": false
}
}
UseLocalData
: Whentrue
, no database is used. Instead, sample data is used from the "LocalRepository/Data" folder. Whenfalse
, a database connection string is used to connect to a database.UseLocalAuth
: Whentrue
, no external authentication provider is enabled. Whenfalse
, Azure AD is used for authentication.LocalAuthSucceeds
: Only used withUseLocalAuth = true
. Whentrue
, local authentication is successful. Whenfalse
, local authentication fails.
The Domain, LocalRepository, and WebApp test projects all run using local data. To run the Infrastructure integration tests, copy the file named "testsettings.json" from the "app-config" repo into the "tests/IntegrationTests" folder.