Khi sử dụng Visual Studio Code để lập trình C# bạn sẽ phải cài thêm Extension để có thêm các tính năng hỗ trợ cho C# như: format on type, IntelliSense, rename-refactoring, ...

Recommended extension sẽ là ms-vscode.csharp (được gợi ý ngay khi bật một file .cs)

ms-vscode.csharp
ms-vscode.csharp

 

Tuy nhiên trong 1 số trường hợp sau khi cài Extension này xong thì chúng ta vẫn không sử dụng được các chức năng của nó. Có thể nhận diện dễ dàng ngay khi mở một file code C#:

missing references
Thiếu references
context menu missing
Thiếu các chức năng trong Context Menu

Lỗi này có thể gặp trên Windows 10, do Omnisharp không thể khởi động được. Kiểm tra Omnisharp Log sẽ có thông báo dạng: 

Cannot Start Omnisharp 
[ERROR] Error: spawn cmd ENOENT

 

Để sửa lỗi này chúng ta sẽ phải bổ sung thêm giá trị "C:\Windows\System32" vào biến Path của Windows:

edit-path-variable-1
Vào Control Panel / System and Security / System và chọn Advanced system settings
edit-path-variable-2
Ở tab Advanced chọn Environment Variables...
edit-path-variable-3
Edit biến Path
edit-path-variable-4
Thêm mới giá trị C:\Windows\System32

 

Sau khi sửa lại biến Path xong, chúng ta gỡ Extension ra cài lại sẽ hết lỗi.

 

Tham khảo issue trên Github.