Desktop examination system · LAN deployment

Recoverable answers and trustworthy results for every lab exam.

LanExamSystem covers question banks, test assembly, targeted publishing, candidate timing, recovery, centralized submission, automatic grading, reports, and archival.

C# · .NETDesktopMySQLSQLiteLAN
LanExamSystem teacher administration console
Real application screenshot · Teacher administration console
Core capabilities

One reliable examination workflow, not isolated features.

The main path is built on server time, immutable snapshots, stable question and option IDs, and persistent jobs.

Question banks & test assembly

Normalize Excel and MySQL sources into a shared model for single-choice, multiple-choice, and true/false questions.

Targeted publishing & timing

Select candidates by discipline and class; use server time for login windows and individual duration.

Lightweight invigilation

Randomized heartbeats report IP, online state, timing state, progress, and last synchronization.

Network and restart recovery

Each answer is written to local SQLite; server checkpoints support device replacement without overwriting newer local state.

Answer isolation

Candidate DTOs and packages exclude correct answers and grading rules at the type level.

Grading, reports & archival

Persistent grading jobs produce teacher results, PDF/HTML reports, hashes, and audit evidence.

Recovery by design

A restarted candidate machine should not mean starting over.

The client saves per-question answers locally. Checkpoints are also synchronized to the server; recovery compares state so an older remote snapshot cannot overwrite newer local work.

  • Local writes protect against transient network loss.
  • Server checkpoints support replacement-machine recovery.
  • Immutable attempt snapshots preserve the grading truth.
LanExamSystem candidate examination interface
Real application screenshot · Candidate examination interface
Architecture

No correct answers on the client; grading truth remains on the server.

Question definitions become an immutable AttemptSnapshot, then map separately to the candidate view and server grading snapshot.

LanExamSystem architecture showing separate candidate and grading views
Verified architecture · Candidate data separated from server grading truth
Deployment facts

Deployment constraints are explicit.

Compatibility comes from the current target frameworks and project documentation, not marketing assumptions.

LAN-firstData and examination traffic stay inside the organization's controlled network
Persistent stateLocal answers, server checkpoints, grading jobs, and archives survive expected interruptions
AuditableStable identifiers, hashes, logs, and reports support result review
CURRENT · FREE TO USE

Free to use at the current stage.

The current release is available for teaching pilots, internal assessments, and corporate training trials. Deployment support and customization are confirmed through discussion.

Open GitHub