For the complete documentation index, see llms.txt. This page is also available as Markdown.

Runtime and Language Standard

AIC Standard

AIC uses modern .NET as its default engineering platform.

Use case
Standard

Production baseline

.NET 10 LTS

Production language

C# 14

Future / preview evaluation

.NET 11 preview, C# 15

Legacy compatibility

Only where required and documented

Desktop Windows

WPF on modern .NET

Cross-platform mobile or desktop

.NET MAUI where justified

Web API

ASP.NET Core on .NET 10

Data access

EF Core 10 unless another approach is justified

Mandatory Rules

  • New production projects MUST target net10.0 unless an exception is approved.

  • C# production language version MUST align with the target framework.

  • Do not force LangVersion=latest in production repositories unless specifically approved.

  • Preview SDKs MUST NOT be used in production build agents.

  • .NET 11 and C# 15 MAY be used for spikes, prototypes, accelerators or approved non-production work.

  • All repositories MUST include global.json.

  • Build images MUST install only approved SDKs.

  • Dockerfiles MUST use supported runtime and SDK images.

Target Framework Guidance

Use single-targeting unless there is a real compatibility reason to multi-target.

Use multi-targeting only where necessary, for example a reusable library consumed by multiple supported applications:

Multi-targeting increases test effort, package complexity and compatibility risk. It requires an ADR.

Language Version Guidance

Default approach:

Avoid:

latest can make builds change unexpectedly when developer machines or build agents update. Use a specific version unless the repository is explicitly a preview or language exploration project.

Required Project Properties

Production projects SHOULD define or inherit:

Runtime Upgrade Rules

Runtime upgrades require:

  • review of Microsoft breaking changes

  • update to SDK pin

  • update to build image

  • dependency compatibility check

  • test run across all supported projects

  • performance smoke test for sensitive services

  • security scan

  • ADR or upgrade record

  • customer approval where contractually required

Legacy Rule

Legacy .NET Framework, .NET Core 3.1, .NET 5, .NET 6 and .NET 7 MUST NOT be used for greenfield delivery. Legacy systems may be maintained only with a documented containment, migration or customer-approved support plan.

Was this helpful?