Year-Specific Mode (v1.x)

This section describes how to set up a "Year-Specific" configuration. This information is only necessary for those implementers who need to set up an instance of the Ed-Fi ODS / API that provides separate endpoints for data related to specific years. The as-shipped configuration does not segment information by year, and so no additional Year-Specific configuration is required if that's the desired behavior.

Overview

ODS / API platform hosts may choose a "Year-Specific" configuration mode within their ODS environments to partition data per-year within a SQL Server instance. Admin App v1.7 and above supports Year-Specific mode. Configuration instructions are below. For more information on enabling year-specific mode for the Ed-Fi ODS / API platform, see Year-Specific ODS Configuration.

Checklist

Use this checklist and the details below to modify your ODS and Admin App to run in Year-Specific mode

  • ODS API: configure the ODS API Web.config for YearSpecific startup
  • ODS SwaggerUI: configure the swagger.webApiMetadataUrl to contain the configured year. For example, http://localhost:54746/metadata/{year}/
  • ODS Database: Rename the EdFi_Ods database to EdFi_Ods_2019
  • Admin App: update database value in EdFi_Ods_Production connectionString
  • Admin App: enable and configure year specific app settings yearSpecific:isEnabled and yearSpecific:year

Year-Specific Configuration

ODS Web API and SwaggerUI Config

The ODS / API and SwaggerUI each require changes to configure them for Year-Specific mode. If installed through .exe installers, you can locate the Web.config for each using IIS Manager. Right-click "Explore" on the web application and then find the Web.config file.

In the SwaggerUI Web.config, make the following changes:

  • Update swagger.webApiMetadataUrl to contain a school year.

In the WebApi Web.config, make the following changes:

  • Update the owin:appStartup app setting to have the value of "YearSpecific".

ODS Database Year-Specific Naming Convention

In Year-Specific mode, the database is identified with a "_{year}" suffix value in the database name. To enable, install the database as usual, either through the initdev process or through the Windows Installers for the Ed-Fi ODS / API Suite 3. Once installed, you can manually rename the database through SQL Server Management Studio by right-clicking the database name and selecting "Rename":

Admin App Configuration

Admin App requires three configuration changes in the Web.config file in order to enable connections to a Year Specific ODS.

Step 1. Locate the Web.config file

To find the Web.config file, open IIS Manager and navigate to the AdminApp web application. Right-click and select the "Explore" option. This will open the installation directory of Admin App where you will find Web.config.

Step 2. Configure for Year-Specific mode

In Web.config, make the following changes:

Change 1. Set the "EdFi_Ods_Production" connection string to contain the year-specific database name created while setting up the ODS. The example below uses the "EdFi_Ods_2019" database and windows authentication:

Changes 2 & 3. To enable year-specific functionality inside Admin App, add the two items shown below into the AppSettings node in Web.config, placing them below any items that already exist.

Reporting Issues

If you encounter issues related to configuration of the Admin App, please create a ticket in the Ed-Fi Tracker system (in the EDFI project).

Contents