I've faced the same problem. When you start your app on WSL via launch profile then VS actually starts your app just by running dotnet run on WSL. Just start app and then execute ps ax on WSL and you will see process with the next command: /usr/bin/dotnet /mnt/c/<path_to_your_executable_on_Windows>
Finally, I did the next:
- Launch app directly from WSL via dotnet run by specifying path to dll on Windows. As the result I have access to stdin since app will be running using linux console.
- Attach to process on WSL via Visual Studio. More details can be found here https://learn.microsoft.com/en-us/visualstudio/debugger/debug-dotnet-core-in-wsl-2?view=vs-2022#attach-to-a-running-wsl-process