Visual Studio non-solution



  • Ok, so what, can I remove it from solution? Or recreate it empty? What?

    Nope and nope. I'm forced to basically drop into the file system, hunt down this location and create an empty file, just so I could then remove it from solution. Or edit the project xml directly.

    :wtf: Microsoft!? How can you fail this hard?

    I hate the way solutions in Visual Studio work. IMO they should just pick up whatever files are in the directory structure, and then add any special settings (or blacklists) on top of it. That's how JetBrains IDEs work. Much better workflow for web work.



  • @cartman82 said:

    I'm forced to basically drop into the file system, hunt down this location

    There’s no “Reveal in Explorer” option if you right-click the file?

    Oh, I just looked closer at the menu, and it looks like it’s the right-click menu for the file – right? Then never mind, there doesn’t seem to be that option, no.



  • Oops looks like I'm the :wtf:. I had debugger active.

    I still hate Solutions though.


  • Fake News

    I got 99 problems, but a solution ain't one.



  • @cartman82 said:

    Nope and nope. I'm forced to basically drop into the file system, hunt down this location and create an empty file, just so I could then remove it from solution. Or edit the project xml directly.

    Or just select it in the Project Explorer and hit Delete.

    But, fine, do things the hard way if you want. But don't blame VS.



  • @blakeyrat said:

    Or just select it in the Project Explorer and hit Delete.
    Doesn't work if Visual Studio is attached to anything; you have to choose to stop debugging first. Which was the OP's point: there are no visual affordances for deletion, nor any visual affordances for why you can't delete.



  • Well, there are the small blue locks.



  • Typically small blue locks are on anything you haven't checked out, and deleting them checks them out.

    As for projects getting out of sync, it's pretty annoying. It's mostly stopped happening to me since I stopped getting latest from anywhere but the source control explorer, though.



  • @TwelveBaud said:

    Doesn't work if Visual Studio is attached to anything; you have to choose to stop debugging first. Which was the OP's point: there are no visual affordances for deletion, nor any visual affordances for why you can't delete.

    I know about the debugger thing, but I still get confused by it every once in a while. They really need to add some visual cue...



  • You mean other than shifting into an entirely different UI arrangement and changing the color of the bar at the bottom, and bringing up a bunch of debugging tools?



  • @Magus said:

    You mean other than shifting into an entirely different UI arrangement and changing the color of the bar at the bottom, and bringing up a bunch of debugging tools?

    Yeah. It's clearly not enough.



  • @cartman82 said:

    You mean other than shifting into an entirely different UI arrangement and changing the color of the bar at the bottom, and bringing up a bunch of debugging tools?

    Yeah. It's clearly not enough.

    I will admit, I am a full time C# developer who uses Visual Studio daily, and I have fallen prey to this as well. I am so hardwired to this though, that my first though when I cannot do something with a file is, "am I in debug, oh snap, I am," ... usually :D



  • @TwelveBaud said:

    Doesn't work if Visual Studio is attached to anything; you have to choose to stop debugging first.

    Duh? How could you remove files from a project which is running?

    @TwelveBaud said:

    Which was the OP's point: there are no visual affordances for deletion, nor any visual affordances for why you can't delete.

    Being in debugging "mode" is pretty visually-distinct from being in the normal editing mode. The window layout changes. The toolbar changes. The window colors change somewhat. I mean, what exactly do you want?


  • BINNED

    @blakeyrat said:

    But, fine, do things the hard way if you want. But don't blame VS.

    I can imagine your reaction if someone said the same to you about git. Let's just say there would be lots of caps lock and swearing involved.



  • Given that VS is designed to be easy to use, whereas git is designed to make you get insulted by greybeard unix sages who only speak in arcane abbreviations in order to get anything done, I'm not sure where your point is.


  • BINNED

    @Magus said:

    Given that VS is designed to be easy to use, whereas git is designed to make you get insulted by greybeard unix sages who only speak in arcane abbreviations in order to get anything done, I'm not sure where your point is.

    I CBA to look it up, but I thought git was designed to be used by programmers who are in general accustomed to working with the command line and don't mind spending a bit of time becoming familiar with the various options. If git really was designed with the goal you mention, then I guess I don't really have a point. 😉



  • @blakeyrat said:

    Duh? How could you remove files from a project which is running?

    You just do it?

    I can do it in Eclipse with no problems.



  • Right; Eclipse is broken in a lot of ways.



  • @blakeyrat said:

    Right; Eclipse is broken in a lot of ways.

    Because when I ask it to delete a file it deletes the file?



  • What happens if your running code hits a breakpoint in the deleted file?

    Now I'm curious. Eclipse seems to support this impossible conundrum, so what does it do?

    I'm guessing: really shitty error message.



  • @blakeyrat said:

    What happens if your running code hits a breakpoint in the deleted file?

    When code is deleted, so are the breakpoints in that code.

    @blakeyrat said:

    I'm guessing: really shitty error message.

    Aren't you the guy who's always going on about actually trying and testing stuff instead of just making shit up?



  • @cartman82 said:

    Or edit the project xml directly.

    Before I started generating Visual Studio projects with CMake, I regularly edited both project and solution files by hand. Many operations were much simpler that way than doing it in the click-o-matic configuration dialogs.

    @cartman82 said:

    IMO they should just pick up whatever files are in the directory structure, and then add any special settings (or blacklists) on top of it.

    I especially hate that the structure in the project is completely unrelated to the structure in filesystem. In a larger project that would be complete mess (in my generated projects I explicitly force the layout to match the filesyste).

    @cartman82 said:

    That's how JetBrains IDEs work.

    Eclipse does as well.

    @cartman82 said:

    I still hate Solutions though.

    Solutions are OKish. Eclipse workspaces are much more brain-damaged IMNSHO.

    @blakeyrat said:

    Eclipse is broken in a lot of ways.

    It is, but not in this one.

    Deleting file is not really different from changing it and Visual Studio does let you change files in a project that is running. Even if edit-and-continue does not work as is the case most of the time at least in what I work with.



  • @Bulb said:

    Deleting file is not really different from changing it and Visual Studio does let you change files in a project that is running. Even if edit-and-continue does not work as is the case most of the time at least in what I work with.

    Which files? Source code, XAML and quite a lot of other files simply yield a "only read mode while project is running!" error if you actually try to edit something besides the breakpoints.


  • Banned

    @Bulb said:

    Eclipse workspaces are much more brain-damaged IMNSHO.

    QFT. I still don't know what a workspace actually represents and when to have separate ones.

    But solutions - they're a great way to manage multiple projects that are used in conjunction. For example, an app and its libraries.

    @Rhywden said:

    Which files? Source code, XAML and quite a lot of other files simply yield a "only read mode while project is running!" error if you actually try to edit something besides the breakpoints.

    It would be nice if the same warning triggered when trying to delete a file, instead of... not even having the button to delete the file.


  • Discourse touched me in a no-no place

    @Gaska said:

    QFT. I still don't know what a workspace actually represents and when to have separate ones.

    It represents a directory with “global” settings and a subdirectory per project. I only use one of the things, with a few hundred projects within it. I also use _Working Set_s quite a bit, so it isn't as mad as it sounds.



  • @Rhywden said:

    Which files? Source code, XAML and quite a lot of other files simply yield a "only read mode while project is running!" error if you actually try to edit something besides the breakpoints.

    Any files at all.

    But maybe they changed it. You see, I need to compile for target that was last supported in Visual Studio 2008 and it had no warning/error like that.



  • The fact that we're talking about this should give you a hint that they definitely changed it.



  • @Bulb said:

    Deleting file is not really different from changing it and Visual Studio does let you change files in a project that is running.

    Not... really.

    There are a very small number of file types you can change while a project is running. And it's basically stuff VS knows is loaded on-demand, like CSS files. You can kind of change WebForms as long as you don't change them in such a way as to require new code (by, say, adding a new event handler).

    @Bulb said:

    Even if edit-and-continue does not work as is the case most of the time at least in what I work with.

    I have no idea what you work with. Maybe just SAY WHAT IT FUCKING IS INSTEAD OF BEING A VAGUE ASSHOLE OF VAGUENESS!!!

    In any case, kudos to you I guess?


  • FoxDev

    @another_sam said:

    Aren't you the guy who's always going on about actually trying and testing stuff instead of just making shit up?

    when he's talking about other people, absolutely,

    i'm not sure the same applies to him.... I'm not saying it does or does not mind you, just that i'm not sure which one it is.


  • Banned

    Due to the missing comma, it took me a long while to understand what you said.



  • @Gaska said:

    I still don't know what a workspace actually represents and when to have separate ones.

    Neither do I, so I guess I don't need more than one. I only have about a dozen projects though, and most of them are part of one tight dependency tree. Most of them are in the same git repository, in a multi-module Gradle build.



  • In vs, you'd typically use one per solution, partially to about checking in random files in other solutions. You could even check out parts of a solution in different workspaces. Its a relatively minor feature, but nice.



  • @Rhywden said:

    Source code

    This works in 32 bit mode as far as I remember.



  • @Magus said:

    partially to about checking in random files in other solutions

    I'll assume "avoid" here instead of "about": The Eclipse workspace is not (usually) checked in to version control. Each project or nested multi-project build is a separate folder in the workspace (usually, sometimes elsewhere on disk), and managed separately in version control. So it's more difficult to accidentally commit files in other projects than you intended.

    @Magus said:

    You could even check out parts of a solution in different workspaces.

    I assume (I'm doing a lot of assuming already today and it's not even morning tea time!) this is like having an Eclipse project in multiple workspaces? I think that works with the "elsewhere on disk" project folder I mentioned earlier but I've never tried it. If I had a large number of projects I'd try the Working Sets feature in Eclipse before setting up another workspace.



  • @another_sam said:

    I assume (I'm doing a lot of assuming already today and it's not even morning tea time!) this is like having an Eclipse project in multiple workspaces?

    That's exactly what it doesn't sound anything like.

    It's like this: You have some mega-solution with three executable projects and like 50 other projects. No, I know, you've probably had bigger, and this should be three solutions in any case. Shut up! Point is, you could have a workspace with like 8 projects and an executable mapped in your solution, set for some arbitrary directory. Again, it's mostly weird, but sometimes it's all you can do.


  • Discourse touched me in a no-no place

    @another_sam said:

    The Eclipse workspace is not (usually) checked in to version control.

    If it was, that would be a Bad Idea. Workspace configurations tend to contain paths and stuff like that. Individual projects don't (unless some dumbass puts them in the source code, of course). Plus projects are usually good units of version control anyway.

    You can also have subprojects if you're using Maven inside Eclipse. They work a whole lot better than they used to. However, Maven is a very scary ecosystem to work with at first. It's not a small commitment to use, even if it solves a heck of a lot of build problems (especially Java build problems, though not exclusively).


  • ♿ (Parody)

    @blakeyrat said:

    What happens if your running code hits a breakpoint in the deleted file?

    IME, removing a file will do things that "break" debugging (usually adding / removing / changing a method signature). It would ask if you want to terminate the process or just disconnect the debugger.



  • @boomzilla said:

    IME, removing a file will do things that "break" debugging (usually adding / removing / changing a method signature). It would ask if you want to terminate the process or just disconnect the debugger.

    Well Visual Studio's solution to the same problem is to simply prevent you from doing it.

    But what does it actually do, is the question. I don't care about your estimation; I'm curious as to how Eclipse actually handles the problem.

    And more generally, I'm annoyed when people do stuff like point and laugh at Visual Studio, "ha ha! Eclipse is so much better!" without bothering to state how Eclipse solves the same problem the Visual Studio guys were solving. I mean people act as if Visual Studio does this just to be a big fat meanie.

    (Which is why, when it's not mentioned, I simply assume: it doesn't, it throws a vague error message instead.)


  • ♿ (Parody)

    @blakeyrat said:

    Well Visual Studio's solution to the same problem is to simply prevent you from doing it.

    Sounds like a git sort of move, preventing you from doing what you wanted to do.

    @blakeyrat said:

    I don't care about your estimation

    I was giving you my experience, not estimation.

    @blakeyrat said:

    I'm curious as to how Eclipse actually handles the problem.

    It's what I told you it does.



  • @boomzilla said:

    I was giving you my experience, not estimation.

    Well I guess you're just shitty at words then, aren't you. HAHA POINT BACK TO BOOMZILLA BLAKEYRAT GETS HIS REVENGE.

    Excuse me for not telepathically knowing what definition of "IME" (WHICH IS NOT A WORD BY THE WAY!) means you gigantic piece of dog turd.

    @boomzilla said:

    It's what I told you it does.

    Maybe you should have said so at some point in your post and saved me the effort.


  • ♿ (Parody)

    @blakeyrat said:

    Excuse me for not telepathically knowing what definition of "IME" (WHICH IS NOT A WORD BY THE WAY!) means you gigantic piece of dog turd.

    It's true. I should have considered the literacy of my audience. Mea culpa.

    @blakeyrat said:

    Maybe you should have said so at some point in your post and saved me the effort.

    See above.



  • @boomzilla said:

    I should have considered the illiteracy of my audience.

    FTFY

    IME is a pretty common acronym, though less so here than some other places.



  • I've always interpreted IME as "in my estimation". Meaning, "I'm guessing here."

    Maybe I'm the freak. Whatever.

    The point is: USE YOUR WORDS!!!!! You don't save any fucking time by using an acronym your audience doesn't understand! You just waste EVERYBODY'S time because they either get the wrong message, or have to ask for clarification!

    Boomzilla, you're not that bad a typist, JUST USE THE WORDS.


  • ♿ (Parody)

    @blakeyrat said:

    The point is: USE YOUR WORDS!!!!! You don't save any fucking time by using an acronym your audience doesn't understand!

    I know, I know! I already said that I hadn't fully considered you as my audience! Sheesh.



  • @blakeyrat said:

    I've always interpreted IME as "in my estimation".

    That is generally how I read it too, but looking it up shows that to be a rare reading of the acronym. The more common version (experience instead of estimation) as the proper reading is obvious if you read the second sentence though.



  • @blakeyrat said:

    I've always interpreted IME as "in my estimation".

    I've always used it to mean "experience;" in fact, I don't think it ever occurred to me that it might have a different meaning to some people. TIL.

    @blakeyrat said:

    Maybe I'm the freak.
    Remember, Blakey is always right! :)


  • Discourse touched me in a no-no place

    @boomzilla said:

    Sounds like a git sort of move, preventing you from doing what you wanted to do.

    Email mswish@microsoft.com and suggest they relax the behavior.


  • Discourse touched me in a no-no place

    @HardwareGeek said:

    TIL.

    Toast Is Lunch? GODDAMNED USE YOUR WORDS WHAAARGARBL



  • No, toast is breakfast; peanut butter sandwich is lunch. I sometimes have toast with afternoon tea, and it can be dinner, too. But not lunch.



  • @Bulb said:

    Before I started generating Visual Studio projects with CMake, I regularly edited both project and solution files by hand.

    I've been known to knock up XmlReaders and XPath processors in PowerShell scripts if I need to make lots of the same kinds of edits to lots of project files...


Log in to reply