microsoft / microsoft/vscode-mono-debug

Support for ASP.NET (XSP)

Open
#18 6 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

feature request
Dominant language
C#
Stars
180
Forks
182
Avg merge
1d 8h
Merged PRs (30d)
1

Description

Hi, I had trouble debugging an ASP.NET 4.5 web app earlier. Normally Xamarin or VS4Mac would suffice, but I need two debuggers going at once. The VSCode debugger was attaching, and I saw threads in the lower left, but it never paused at my breakpoints. I finally realized that I had disabled debug symbols and that was the reason why the breakpoints weren't being hit. Silly mistake, but I feel more docs are needed for this particular use case.

I figured out how to start my (Nancy) app like this:

$ MONO_OPTIONS="--debug --debugger-agent=transport=dt_socket,server=y,suspend=n,address=127.0.0.1:55555"  xsp4 --address 0.0.0.0 --port 8080 --verbose --root Content/

Strange behaviors I encountered (these might be more to do with mono and/or Nancy framework):

  • Adding ,suspend=n to the debugger options seems like the only way I could make it hit breakpoints.

  • Sometimes it seems to work better if the root is set to the full project folder path.

  • In order for it to actually hit the breakpoints though, I need to hit a route on the app before I attach the debugger. This is the case on both mono 4.6.2 & 4.8.0.

Please let me know if you have any ideas about these issues, or if you need help with docs.

BTW, a month or two ago I forked this project and started a 'mono-xsp' debugger/launcher to try to eliminate the need for setting specific MONO_OPTIONS, but I couldn't figure out how to address/fix these problems. If anyone else sees the need for the launcher, I can forge ahead.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the MONO_OPTIONS and xsp4 command shown in the issue, then review the existing debugger documentation for ASP.NET/XSP attachment and breakpoints. Done means documenting the setup, debug-symbol requirement, and the observed route-loading behavior, while clearly separating confirmed guidance from unresolved Mono or Nancy issues.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp, vscode
Domain
devtools, documentation
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.