Understand the csharp-language-server project structure
mainThe project is organized into several distinct layers that separate the LSP protocol, the JSON-RPC transport, and the Roslyn integration:
src/CSharpLanguageServer/: The main server project (targetingnet10.0).Lsp/: The LSP protocol layer.Server.fsis the central wiring file for capabilities and handler maps.Runtime/: Handles JSON-RPC transport and request scheduling.Roslyn/: Manages integration withMicrosoft.CodeAnalysis(Roslyn) for C# compilation and workspace APIs.Handlers/: Contains individual LSP method handlers (one per feature).
tests/CSharpLanguageServer.Tests/: The NUnit test project containing integration tests and a test harness.