- Update BridgeServer to try multiple ports sequentially
- Reads DefaultPort and MaxPortRange from ConfigurationService
- Tries ports from DefaultPort to DefaultPort+MaxPortRange
- Updates _port field to the port that successfully starts
- Throws exception if no available ports found
- Make _port field mutable to store discovered port
- Add public Port property to expose the actual port being used
- Make startPort parameter optional (nullable), defaults to config value
- Add WriteRawResponseAsync helper method for future use
This allows multiple Visual Studio instances to run simultaneously,
each with their own Roslyn Bridge server on different ports.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add appsettings.json with configurable settings:
- WebApiUrl: URL of the WebAPI middleware (default: http://localhost:5001)
- DefaultPort: Starting port for VS instances (default: 59123)
- MaxPortRange: Number of ports to try (default: 10)
- HeartbeatIntervalSeconds: Heartbeat interval (default: 60)
- Create ConfigurationService singleton to load settings
- Loads from appsettings.json in extension directory
- Falls back to sensible defaults if file missing
- Provides easy property access
- Update RoslynBridge.csproj to include:
- ConfigurationService.cs in compilation
- appsettings.json as content (copied to output and included in VSIX)
- System.Data reference for future use
This allows users to customize extension behavior without recompiling.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>