← Back to blog

.NET legacy takeover: seven pre-production checks before you maintain

By Eva Lin

Who this article is for

  • IT leadership / procurement: Evaluating handover from the original vendor to a third party—need a verifiable takeover scope.
  • Developers / operators: Engineers about to maintain ASP.NET MVC, Web Forms, or early ASP.NET Core codebases.

The problem

“Maintenance takeover” is often quoted as “N hours per month for bugs.” In practice, the first 30 days set the next 12 months: without clarity on deployment, configuration, jobs, and data flows, small changes trigger cascading failures. Common .NET takeover risks we see:

  • web.config / appsettings drift from production—works locally, fails live
  • Scheduled jobs passed on verbally
  • Stored procedures out of sync with application builds
  • Logs scattered as local text files—no timeline when incidents hit

Executive summary: Contracts should include a “current-state inventory” deliverable before feature work; SLAs make sense after the inventory.

Check one: source matches what runs in production

Decision-makers care about: Are you buying a “compilable zip” or the version that is actually live?

Technical checklist:

  • Compare assembly versions, Git tags (if any), production DLL timestamps
  • Record Framework / .NET version and IIS app pool settings
  • List NuGet packages and known CVE exposure

Check two: configuration and secrets inventory

Decision-makers care about: Connection strings and API keys must be transferable and rotatable.

Technical checklist:

  • Central list of connection strings, SMTP, external API endpoints
  • Map Development / Staging / Production sources (transforms, env vars, Azure App Settings)
  • Flag hard-coded secrets as refactor priorities

Check three: deployment and rollback path

Decision-makers care about: If a release fails, how fast can you return to the previous build?

Technical checklist:

  • Document build → publish → file swap or container image flow
  • Confirm database migration scripts and execution order
  • Keep at least one verified production backup suitable for rollback

Related work: Bank statement BAI2 conversion

Check four: background jobs and schedules

Decision-makers care about: Who notices when a nightly job does not finish?

Technical checklist:

  • List Windows Task Scheduler, Hangfire, Windows Services, Azure WebJobs, etc.
  • Record cron/triggers, run-as accounts, retry behavior
  • Confirm whether test environments can trigger safely (or need external mocks)

Related work: NGO subsidy disclosure

Check five: observability and logging

Decision-makers care about: When users complain, can you locate the failing request within 15 minutes?

Technical checklist:

  • Log paths, retention, centralization (Application Insights, ELK, etc.)
  • Whether error pages leak stacks externally
  • Correlation IDs on critical flows (import, upload, file generation)

Check six: data flows and integration points

Decision-makers care about: If one field changes, which downstream systems break?

Technical checklist:

  • Input/output formats, encodings (Big5 / UTF-8), SFTP or API integrations
  • Manual steps (“drop file in folder X”) as hidden dependencies
  • Integration diagram: internal systems ↔ this app ↔ agencies or banks

Check seven: permissions and account lifecycle

Decision-makers care about: After staff leave, can old accounts still sign in or run batches?

Technical checklist:

  • Auth: forms, AD, SSO, JWT
  • Role-to-feature matrix; shared admin accounts
  • Service account password expiry and rotation

Suggested first-month rhythm

Week Focus
Week 1 Checks 1–3; read-only production observation
Week 2 Checks 4–5; document jobs and logging
Week 3 Checks 6–7; integration and permission maps
Week 4 One low-risk improvement (logging, alert, small bug) to validate release

Next steps

If you are about to take over a .NET legacy system, specify inventory deliverables (config table, schedule table, integration diagram) in the contract before maintenance hours. We have taken over bank conversion, subsidy API, and enterprise back-office systems—contact us through the site to scope an assessment.

Related articles