debugging several projects in Visual Studio 2017 - c#

I have a solution mainly written in c sharp. This solution has 10 projects, one of them contains the web forms. This web forms get the data from another project. However, I am receiving null data. In order to debug this, I would like to setup the web forms project as the start project but the problem that I'm getting is that I don't see what is going on on the other project, the one that passes the data. How can I reach this project when debugging? Any solutions? The other project just contains classes, it is not dealing with the database either yet.
Thanks

Have you tried to set the solution to start multiple projects at once?
Right click on "Solution Explorer", click on "Properties", select "Multiple startup projects" and choose what projects you want to start together by changing the dropdow from "none" to "start". It should work.

sorted! it was a silly mistake, the interface was misspelled, it should be IClass, being Class the class name, somehow, it was misspelled

Related

VS2015 The breakpoint will not currently be hit. No symbols have been loaded for this document

I have solution with 3 projects. Project one - Library. Project two - Service (asmx). Project three - Test. In my service I have two config transform: PRODUCTION and TEST. They are equals, but name of databases is different. My solution:
If I Debug Test with PRODUCTION.config then all right - my breakpoints is active. If I Debug Test with TEST.config then bad. I get this:
What could be the problem? Sorry for my English.
Fixing:
Right mouse click your project
Select Properties
Select the Build tab
Make sure Define DEBUG constant and Define TRACE constant are
checked
Click the Advanced button at the bottom of the Build tabpage
Make sure that Debug Info: is set to Full
Click OK and save changes
Clean solution and rebuild the project
Link to source Fixing “The breakpoint will not currently be hit. No symbols have been loaded for this document.”.
(step 6 generates the .pdb files, these are the debugging symbols)
For more information see next screenshots. Build settings:
Advanced settings of build:
Checked for Microsoft Visual Studio Enterprise 2015 and Microsoft Visual Studio Professional 2017.
I had similar issue and I did the following simply:
Go to Debug => Options => General => Remove the check mark for "Enable Just My Code"
This worked for me.
Another reason this can happen is that if you are sharing multiple projects between solutions and you have set up custom build configurations then simply changing from release to debug on the toolbar (or other shortcuts) can mess up the active build configuration and create all sorts of random consequences.
Make sure that Solution > Properties > Active Config is what you expect ('Mixed' is usually bad) and use Solution > Configuration Manager if in doubt.
I forgot again and the tactics popular on the intertubes did not, of course, work so this is partly a note to self...
Require source files to exactly match the original version
This has to be unchecked.
As a future reference, the same issue can happen when you have the same assembly both in GAC and bin\Debug folder. Just deleting the assembly from the GAC and it works again.
If you're doing multiple startup projects, make sure you have all your services your want to debug set to Start
First try rebuilding your project by right mouse click the project > Rebuild If that doesn't work, try a clean of the project (right mouse click on the project > clean)
I had similar issue and I did the following:
Debug=>Options=>General => Remove the check mark for "Enable Just My Code"
This worked for my vs
Try adding or updating your .csproj file with the tag <DebugType>full</DebugType> inside <PropertyGroup>. This solved my problem.
I am using a solution with several projects (Visual Studio 2015).
In my case, the problem was solved when I realized that one of the projects was being defined with another URL in: Project properties - Web - Servers - Project Url.
After changing to use the same URL as the other projects, the problem was solved.
Image
I am using a solution with several projects (Visual Studio 2015).
I tried several approach. This one worked for me.
In my case, the problem was solved when I realized that one of the projects was being defined with another URL in: Project properties - Web - Servers - Project Url.
After changing to use the same URL as the other projects, the problem was solved.
Image
In my case the project under which the debug breakpoints were not getting hit was also referenced by another solution which was at the time running.
When I stopped that solution the breakpoints started hitting.
If the library happens to be c++ with a C# consumer project actually doing the calling into it, you need to go to Properties -> Enable Native Debugging in the consumer project, and make sure this box is checked.
This can happen if you haven't set the current project as the startup project. In the solution explorer navigate to your project right click and select set as startup project.

How can I run multiple programs sequentially, from one solution?

I have a Visual studio solution containing multiple programs, each of which contains it's own Class and Main Method. I need to set these programs up to run one after the other, as some of them access the same database tables, and I do not want there to be conflicts.
I have tried setting up dependencies and creating a new program with class dependencies, however, this does not seem to have worked, does anyone have an idea?
Right click on your solution > Properties > Common Properties > Startup project
Select "Multiple startup Projects" and change the value of the Action column from "None" to "Start" or "Start without debugging"
Visual Studio is a development tool. It is not a tool to orchestrate how your application should execute. Your application should also function when executed outside Visual Studio.
With that in mind you need to decide how to partition your application. Right now you seem to have several applications (console programs?) that need to execute one after the other. An easy solution is to create a batch file that executes each in turn. You can also create a separate application that execute each "child" application in sequence using the Process.Start method but why bother when you can create a batch file?
You might also consider merging your different applications into a single application that has a Main method that executes each task in sequence.
Without more information about your problem it is hard to give you specific advice.
You mentioned you have tried "Multiple Startup Projects" approach but did you set the order in which multiple projects run when you start the debugger?
To set the order in which multiple projects run when you start the debugger
Open the Solution Property Pages dialog box.
Select the Startup Project set under Common Properties.
In the pane on the right, select Multiple Startup Project.
Select a project, and then click Move Up to run that project earlier when you start the debugger, or click Move Down to run the project later.
Reference: How to: Modify Project Properties and Configuration Settings
You need run each program in separate Visual Studio instances.

merging two c# project-need to insert 1 into the other

here's the list of projects I have:
I need to insert the weather and maps into the PL.
I've tried several things and came up empty(I saw what was suggested to people who asked similar question but it didn't work for my situation).
any ideas?it's for a project I make and I need to submit it in a few days.
If you have resharper plugin installed in VS then you can select all the files and folder. Then press F6(or right click selection refactor->move).
Otherwise you would have to move all the files manually by dragging to one project to other.
If you're trying to merge the code bases, there's no easy way to do that. You'll just have to go one file or folder at a time, update the namespaces, resolve any conflicting names etc.
If you want to just use the functionality within your other projects, you can add a project reference to them from the consuming project. You can do this via References -> Right click -> Add Reference -> Solution Tab -> Tick the projects you want to reference -> Ok

How to access break points in two application in the same solution

I have two web applications in the same solution. I put break points in both of them and when debug I can't access but the start up one. How to debug both of them?
Just right click on your project solution in visual studio then go to properties and in Common Properties > Startup Project select Multiple startup projects. Then choose the appropriate action.
That way you will be able to debug both
You can have only one active project at time of compilation/running. By the way, if one active project somehow calls something from another, just press F11 and you will jump into another project and symbols for it will be loaded automatically and you can debug it.
EDIT
If you are asking about debugging 2 projects contemporary in parallel, it's not possible with in one VS. If these are the separate projects that communicate with eash others, let's say chat application, you can naturally, by running two instances of VS and debug communication between them.
Hope this helps.
You should try to open two versions of visual studio, run both solutions, but set the start up project differently for each, and run them both. The two instances of visual studio should catch the break points of their respective start up programs. I know this works for windows/console applications. Although I've never tried it with 2 web applications. You may have to configure the applications to use different ports.

Visual Studio - Programmatically configure solution for source control

I am in the process of creating a Wizard to help my organization auto create a base project for all applications. The idea is that a programmer can enter a project name, a few other basics and the process will create some projects, add other project from source control, configure IIS, etc...
A lot of the work is done by simply using project templates and the IWizard interface for some of the more complicated operations. What I am trying to do is this, once all of the projects are auto created, I am creating a workspace and automatically moving all of the files under source control. I am also doing things like adding common projects, setting up some special settings in IIS, etc... The problem is that the solution file, although it is under source control, is not actually configured to use source control.
Anyone have an idea on how to programmatically configure a solution so that it is part of source control and ready to use? I've run into a brick wall and can't seem to get any further. BTW: In case a didn't make it clear, I'm essentially trying to do the same in code as right clicking on a project and selecting "Add Solution to Source Control."
Like I've said, I've got most of the issues solved. Just this last one is giving me fits...
The important facts:
Windows XP
VS 2008
TFS
Using Microsoft.TeamFoundation objects....
Can you handle this through the Visual Studio extensibility framework? EnvDTE basically provides access to anything you can do interactively...
I just did what you said while recording a Macro; Looks like:
DTE.Windows.Item(Constants.vsWindowKindSolutionExplorer).Activate()
DTE.ActiveWindow.Object.GetItem("CLSTestSolution").Select(vsUISelectionType.vsUISelectionTypeSelect)
DTE.ExecuteCommand("File.TfsAddSolutionToSourceControl")
Perhaps you can start there?

Categories