A VS Code extension that monitors WSDL endpoints for changes and automatically updates your .NET service references. Perfect for SOAP service development with real-time WSDL change detection and integrated C# project management.
- WSDL Change Detection: Monitors actual WSDL endpoints (not just files) for content changes
- Smart Monitoring: Polls WSDL URLs every 30 seconds and detects changes via content hashing
- Manual Service Updates: On-demand service reference updates with a single click
- C# Project Integration:
- Debug C# projects directly from service reference files
- Run C# projects with integrated terminal support
- Automatic project discovery
- Generate Initial Config: Create
dotnet-svcutil.params.jsonfiles with guided setup - Smart CodeLens Buttons: Context-aware inline buttons in service reference files
- Progress Indication: Real-time feedback during service reference generation
- Output Channel: Dedicated logging for all WSDL monitoring and service operations
- .NET SDK: Must have .NET SDK installed with
dotnet-svcutiltool available - Workspace: Requires an open VS Code workspace with SOAP projects containing
ServiceReferencefolders
This extension contributes the following settings:
soapServiceReference.autoRun: Enable/disable automatic running of dotnet-svcutil when params files change (default:true)soapServiceReference.showNotifications: Show success/error notifications when dotnet-svcutil runs (default:true)soapServiceReference.autoUpdateOnWsdlChange: Automatically update service references when WSDL changes are detected without asking (default:false)soapServiceReference.wsdlCheckInterval: Interval in seconds to check for WSDL changes, range 5-300 seconds (default:30)soapServiceReference.showWsdlChangeDetails: Show detailed information about WSDL changes in notifications (default:true)soapServiceReference.enableWsdlMonitoringByDefault: Automatically start WSDL monitoring when opening service reference files (default:false)
- Open a
dotnet-svcutil.params.jsonfile in the editor - Click
$(eye) Monitor WSDL Changesto start monitoring the WSDL endpoints - The extension will check every 30 seconds for changes to the actual WSDL content
- When changes are detected, you'll get a notification to update the service reference
- Click
$(eye-closed) Stop WSDL Monitoringto stop monitoring
- Open a
dotnet-svcutil.params.jsonfile in the editor - Click
$(sync) Update Service Referenceto manually update from WSDL - Or use the Command Palette:
Ctrl+Shift+P→ "SOAP: Run dotnet-svcutil"
- In any
dotnet-svcutil.params.jsonfile, use the inline buttons:$(debug-start) Debug C# Project- Start debugging the associated C# project$(play) Run C# Project- Run the C# project in terminal
- The extension automatically finds the
.csprojfile in the parent directory
When viewing a dotnet-svcutil.params.json file, you'll see:
$(sync) Update Service Reference- Manual service reference update$(eye) Monitor WSDL Changes/$(eye-closed) Stop WSDL Monitoring- Toggle WSDL monitoring$(debug-start) Debug C# Project- Start debugging$(play) Run C# Project- Run project$(sync~spin) Running...- Shows when operation is in progress
- Use Command Palette:
Ctrl+Shift+P→ "SOAP: Generate dotnet-svcutil.params.json" - Or right-click on a folder in Explorer → "Generate dotnet-svcutil.params.json"
- Follow the guided setup to enter WSDL URL, namespace, and target framework
- The extension will create the params file and ServiceReference folder structure
- Use Command Palette:
Ctrl+Shift+P→ "SOAP: Setup File Watchers" - Select which project directories you want to monitor
- The extension will watch only the selected directories for changes
The extension expects the following project structure:
YourProject/
├── ServiceReference/
│ ├── dotnet-svcutil.params.json
│ └── Reference.cs (generated)
└── YourProject.csproj
SOAP: Run dotnet-svcutil- Manually update service reference from WSDLSOAP: Generate dotnet-svcutil.params.json- Create a new params file with guided setupSOAP: Start WSDL Monitoring- Begin monitoring WSDL endpoints for changesSOAP: Stop WSDL Monitoring- Stop WSDL endpoint monitoringSOAP: Debug C# Project- Start debugging the associated C# projectSOAP: Run C# Project- Run the C# project in terminalSOAP: Setup File Watchers- Configure legacy file watching (deprecated)
- The extension requires
dotnet-svcutilto be available in the system PATH - File watching only works for files in the workspace; external files are not monitored
- Initial release
- Automatic file watching for
dotnet-svcutil.params.jsonfiles - Manual command execution via context menu
- Configurable settings for auto-run and notifications
- Progress indication and output channel logging
To run the extension in development mode:
- Clone the repository
- Run
npm installto install dependencies - Press
F5to launch the Extension Development Host - Test the extension with your SOAP projects
To build the extension:
npm run compileTo run tests:
npm testThis extension is provided as-is for development purposes. See the LICENSE file for details.
Enjoy streamlined SOAP service development!