понедельник, 8 июля 2013 г.

Some inconveniences of Visual Studio

I like Visual Studio and I got used to it. When I started to use VS2010 it seemed to me worse than previous version, but now I feel fine with it. But sometimes some annoying bugs happen. The most annoying thing is that some of them can cause serious damage for the project.

Some approximate list of inconveniences I have faced to:

1) Bugs with WPF editor. 
Actually, WPF editor in VS is rather bad even without any bugs. It's slow and sometimes it can fail to make a view for no reason so you should restart VS. But by my feelings it's also one of the most sensitive parts of VS which can be affected by some changes of VS. Once I had a situation when WPF editor failed to create the view and moreover failed to build a project even if it evidently had no errors. After some investigation I've found that this happened after Windows auto update which somehow affected VS. It took almost a day to figure out where the problem is and to fix it.

2) Some inconveniences with autogenerated files.
For example, for code library if I try to create new settings file, VS creates file named Settings1 and it doesn't allow me to rename it to settings because it exists allegedly. Really there is no file named Settings in the project. If you create linq to sql file (dbml) it can create Settings file automatically. Additional inconvenience appears when you try to copy and paste settings file or dbml file to another project, because VS recreates autogenerated .designer.cs files.

3) Sudden crushes of VS. 
This is one of the most annoying things which happened several times during 2 years of using VS (and my colleagues encounter the same problems). The reason of failure is usually unknown: you may have tried to change target version of .NET or something similar but absolutely legal. You are lucky if VS will work after it's restarted. 
Once I had a situation when my project had lost all compilation constants and pre- and post-build events. Several times I had a situation when solution just hadn't comliled and produced some nonexistent errors. The only way that helped was to create new solution and include existent projects into it. 
The last error that I encounter now is similar but worse: solution can be built with no errors but cannot be debugged from VS. It just throws general "Visual Studio has encountered a problem and needs to close" exception and reopens. And it happends even with blank console project within a solution. What is bad here is that the solution is in the repository and when built on the other computer it behaves the same way. Nothing including deleting .suo file and recreation of solution helped. After some time the problem was fixed by itself! I don't know what happened. 
But after the problem was fixed the new problem occured: after some changes in target platforms (x86/x64) of projects (settings have returned to initial state finally) the solution doesn't build project in the order it should. Project build order as it's shown in solution properties is right, but when I rebuild the solution, it actually doesn't rebuild projects. The way to deal with it now is to build projects one by one manually.