Visual Studio

Welcome to the Visual Studio UserVoice site. Let us know what you would like to see in future versions of the Visual Studio suite of products. This site is for suggestions and ideas. If you need to file a bug, visit the Visual Studio Connect site: http://connect.microsoft.com/visualstudio.

ASP.NET Runtime/Web Tooling suggestions have moved! All your ideas, including your votes, have been transferred and are searchable in the ASP.Net Uservoice forum. Please submit any new ASP.NET Runtime/Web Tooling suggestions, or vote on existing suggestions by going to http://aspnet.uservoice.com.

We look forward to hearing from you!

Thanks – Deon Herbert
Visual Studio Team

Terms of Service and Privacy Policy

I suggest you ...

You've used all your votes and won't be able to post a new idea, but you can still search and comment on existing ideas.

There are two ways to get more votes:

  • When an admin closes an idea you've voted on, you'll get your votes back from that idea.
  • You can remove your votes from an open idea you support.
  • To see ideas you have already voted on, select the "My feedback" filter and select "My open ideas".
(thinking…)

Enter your idea and we'll search to see if someone has already suggested it.

If a similar idea already exists, you can vote and comment on it.

If it doesn't exist, you can post your idea so others can vote on it.

Enter your idea and we'll search to see if someone has already suggested it.

  • Hot ideas
  • Top ideas
  • New ideas
  1. New "switch all" operator for enumerates

    It would be desirable to have a switch all (Enumerate) kind of operator, that would produce a compiler error if there is an enumerate value missing from the switch case list.

    This would help application maintainers to detect incomplete switches when an enumerate is updated.

    1 vote
    Vote
    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      I agree to the terms of service
      Signed in as (Sign out)
      You have left! (?) (thinking…)
      0 comments  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
    • Fix the bug in the VS2013 profiler

      The built in profiler in Vs2012,VS2013 fails with a "Analysis of the log failed" when there's an app which has duplicate class names in some of their assemblies (in example, but not limited to MonoGame and XNA for WP8).

      Sometimes duplications are hard to spot, thus providing a better solution than "log failed" would definitively help.

      3 votes
      Vote
      Sign in
      Check!
      (thinking…)
      Reset
      or sign in with
      • facebook
      • google
        Password icon
        I agree to the terms of service
        Signed in as (Sign out)
        You have left! (?) (thinking…)
        0 comments  ·  Diagnostics  ·  Flag idea as inappropriate…  ·  Admin →
      • Named variable arguments with params Dictionary<string,T>

        C# functions can have variable positional arguments, like this:

        int MyFunction(int arg1, int arg2, params int[] restOfTheArgs)

        You can also give parameters' names at the callsite:

        var x = MyFunction(arg1:42, arg2:99)

        But one thing you can't do, is make variable named arguments, analogous to Python's **kwargs. The 'params' syntax could be straightforwardly generalized to this case, though. It'd be nice to be able to define a constructor like:

        JsonObject(params Dictionary<string,object> keys)

        And call it like:

        new JsonObject(key1: 123, x: "asdf")

        This would also be useful for functions like string.Format - eg, you could write

        string.Format("{greeting}, {who}!", greeting:"Hello", who:"world")

        instead of…

        3 votes
        Vote
        Sign in
        Check!
        (thinking…)
        Reset
        or sign in with
        • facebook
        • google
          Password icon
          I agree to the terms of service
          Signed in as (Sign out)
          You have left! (?) (thinking…)
          0 comments  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
        • Allow folding namespace into class declaration

          C# source files typically look like this:

          namespace SomeNamespace
          {
          class SomeClass
          {
          // Everything in here
          }
          }

          This means that you're two tabs indented before even starting a function. It'd be nice to have a syntax like this, as syntactic sugar:

          class SomeNamespace.SomeClass
          {
          // Everything in here
          }

          2 votes
          Vote
          Sign in
          Check!
          (thinking…)
          Reset
          or sign in with
          • facebook
          • google
            Password icon
            I agree to the terms of service
            Signed in as (Sign out)
            You have left! (?) (thinking…)
            0 comments  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
          • Hello I suggest the following versions of VC to make a choice in the checkbox when you install the program, what programming language to ins

            Hello I suggest the following versions of VC to make a choice in the checkbox when you install the program, what programming language to install - C, C, Basic, or all together. All this in order not to overload and so unwieldy program.
            I would like to thank the VC 2013 interface designers. Theme in the style Modern UI - Blue is just gorgeous!

            1 vote
            Vote
            Sign in
            Check!
            (thinking…)
            Reset
            or sign in with
            • facebook
            • google
              Password icon
              I agree to the terms of service
              Signed in as (Sign out)
              You have left! (?) (thinking…)
              0 comments  ·  Flag idea as inappropriate…  ·  Admin →
            • create a flag for 'continue on error'

              When this flag is true, DB project would run all scripts and, after that, summarize with something like this:
              10 scripts: success
              2 scripts: error

              If errors were found, a new script with the scripts with error would be created for correction

              3 votes
              Vote
              Sign in
              Check!
              (thinking…)
              Reset
              or sign in with
              • facebook
              • google
                Password icon
                I agree to the terms of service
                Signed in as (Sign out)
                You have left! (?) (thinking…)
                0 comments  ·  Database Projects  ·  Flag idea as inappropriate…  ·  Admin →
              • Please provide a link, somewhere OBVIOUS, where reported bugs can be followed up.

                Please provide a link, somewhere OBVIOUS, where I can follow up on reported bugs. I keep going round and round in circles trying to find the right place. There are too many support sites and forums. The “report a bug site” is http://connect.microsoft.com/VisualStudio/ so there would be a good place.

                1 vote
                Vote
                Sign in
                Check!
                (thinking…)
                Reset
                or sign in with
                • facebook
                • google
                  Password icon
                  I agree to the terms of service
                  Signed in as (Sign out)
                  You have left! (?) (thinking…)
                  0 comments  ·  General  ·  Flag idea as inappropriate…  ·  Admin →
                • 115 votes
                  Vote
                  Sign in
                  Check!
                  (thinking…)
                  Reset
                  or sign in with
                  • facebook
                  • google
                    Password icon
                    I agree to the terms of service
                    Signed in as (Sign out)
                    You have left! (?) (thinking…)
                    3 comments  ·  Visual Studio Ultimate  ·  Flag idea as inappropriate…  ·  Admin →
                  • implement dashboard plugin development

                    Feature in Dashboard administration tab to add custom plugin to perform custom administration tasks within dashboard without external tools

                    1 vote
                    Vote
                    Sign in
                    Check!
                    (thinking…)
                    Reset
                    or sign in with
                    • facebook
                    • google
                      Password icon
                      I agree to the terms of service
                      Signed in as (Sign out)
                      You have left! (?) (thinking…)
                      0 comments  ·  Team Foundation Server  ·  Flag idea as inappropriate…  ·  Admin →
                    • Implement proper indent / reindent command

                      As an Eclipse user, I got addicted to the Ctrl+I shortcut which invokes the indent / reindent functionality. Visual Studio has something seemingly similar under the Format Selection command (Ctrl+K,F) but it has been frustrating for two main reasons:

                      1. Besides indentation, it also formats the selection. This is sometimes undesirable and I honestly quite despise manually fixing formatting screwed by a tool.

                      2. When invoked on an empty line, it doesn't place the caret at the right position.

                      I didn't realize how useful Eclipse's indent command is until I came to VS and found it missing. The IDE generally…

                      1 vote
                      Vote
                      Sign in
                      Check!
                      (thinking…)
                      Reset
                      or sign in with
                      • facebook
                      • google
                        Password icon
                        I agree to the terms of service
                        Signed in as (Sign out)
                        You have left! (?) (thinking…)
                        0 comments  ·  Editor  ·  Flag idea as inappropriate…  ·  Admin →
                      • design db quickly

                        when design the db,we hope input the field description quickly,like the field name,field type and so on

                        1 vote
                        Vote
                        Sign in
                        Check!
                        (thinking…)
                        Reset
                        or sign in with
                        • facebook
                        • google
                          Password icon
                          I agree to the terms of service
                          Signed in as (Sign out)
                          You have left! (?) (thinking…)
                          0 comments  ·  IDE  ·  Flag idea as inappropriate…  ·  Admin →
                        • Include feature of Task Board Enhancer plug-in

                          Include all the features in this (excellent) free plug-in:
                          http://pascoal.net/task-board-enhancer/

                          Unfortunately it has not been updated for TFS2013 yet.

                          25 votes
                          Vote
                          Sign in
                          Check!
                          (thinking…)
                          Reset
                          or sign in with
                          • facebook
                          • google
                            Password icon
                            I agree to the terms of service
                            Signed in as (Sign out)
                            You have left! (?) (thinking…)
                            2 comments  ·  Team Foundation Server  ·  Flag idea as inappropriate…  ·  Admin →
                          • Add standard xml documentation to auto-generated code

                            We use Code Analysis, enabled XML documentation and set TreatWarningsAsErrors to true on all our projects. The problem of (almost all) auto-generated code that it does NOT contain any xml documentation (summaries etc.).

                            Becuase of our settings, the build always fails on auto-generated code. What I suggest is to add some default xml documentation to auto-generated code (.g.cs files) or ignore auto-generated code (for the xml documentation).

                            16 votes
                            Vote
                            Sign in
                            Check!
                            (thinking…)
                            Reset
                            or sign in with
                            • facebook
                            • google
                              Password icon
                              I agree to the terms of service
                              Signed in as (Sign out)
                              You have left! (?) (thinking…)
                              0 comments  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                            • Please provide data export /inport (exchange)

                              Please provide data export /inport (exchange)

                              2 votes
                              Vote
                              Sign in
                              Check!
                              (thinking…)
                              Reset
                              or sign in with
                              • facebook
                              • google
                                Password icon
                                I agree to the terms of service
                                Signed in as (Sign out)
                                You have left! (?) (thinking…)
                                0 comments  ·  Application Insights  ·  Flag idea as inappropriate…  ·  Admin →
                              • Reduce PDB sizes by storing a type registry in the PDB file.

                                When using C++ templates, the PDB file can grow very quickly. E.g. when using std::tuple<long,long,short,char*>, and storing that tuple in an std::map, you see the same std::tuple definition popping up in all std::map related classes (_tree, _pair, iterator, less, allocator, ...). If the PDB file would keep an internal registrly that maps std::tuple<long,long,short,char *> to an internal id (number), then all references can refer to that type instead of having the full tuple written out completely and blow up the PDB file.

                                8 votes
                                Vote
                                Sign in
                                Check!
                                (thinking…)
                                Reset
                                or sign in with
                                • facebook
                                • google
                                  Password icon
                                  I agree to the terms of service
                                  Signed in as (Sign out)
                                  You have left! (?) (thinking…)
                                  1 comment  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                                • 1 vote
                                  Vote
                                  Sign in
                                  Check!
                                  (thinking…)
                                  Reset
                                  or sign in with
                                  • facebook
                                  • google
                                    Password icon
                                    I agree to the terms of service
                                    Signed in as (Sign out)
                                    You have left! (?) (thinking…)
                                    0 comments  ·  Team Foundation Server  ·  Flag idea as inappropriate…  ·  Admin →
                                  • TFS Source Control Annotate - add more visible visual indicator that recursive loading is happening

                                    When you annotate a code file after merging two branches, it initially shows the user who performed the merge next to the changes. In the background visual studio recurrsively searches and updates the user name to the person that actually made the code change rather than the merge user. (Great feature by the way!) However, sometimes this can take a while and it is easy to move into the changesets thinking the loading is done. It would be helpful to have a clear visual indicator that any loading, including resursive loading, is still continuing. Then I can wait until it…

                                    1 vote
                                    Vote
                                    Sign in
                                    Check!
                                    (thinking…)
                                    Reset
                                    or sign in with
                                    • facebook
                                    • google
                                      Password icon
                                      I agree to the terms of service
                                      Signed in as (Sign out)
                                      You have left! (?) (thinking…)
                                      0 comments  ·  Team Foundation Server  ·  Flag idea as inappropriate…  ·  Admin →
                                    • We want to launch web site in browsers other than IE if use the Performance analysis wizard.

                                      The Performance analysis wizard just launch the IE as the default browser if we want to use this tool for Web app, but sometimes the web app requirs other brower like Chrome.

                                      More detailed inforamtion, see: http://social.msdn.microsoft.com/Forums/en-US/8d21817b-a9cc-4196-8814-b90be4e30da0/performance-analysis-wizard-how-to-launch-web-site-in-browsers-other-than-ie?forum=vsdebug

                                      11 votes
                                      Vote
                                      Sign in
                                      Check!
                                      (thinking…)
                                      Reset
                                      or sign in with
                                      • facebook
                                      • google
                                        Password icon
                                        I agree to the terms of service
                                        Signed in as (Sign out)
                                        You have left! (?) (thinking…)
                                        0 comments  ·  Visual Studio Ultimate  ·  Flag idea as inappropriate…  ·  Admin →
                                      • Show untime value of function args

                                        I looked at Data tips but they have to explicitly pinned. What I am asking for is a switch that will turn on showing the runtime values of all function arguments .
                                        Example

                                        Void Method (int a, int b , int c ) { }

                                        During Debug :
                                        Void Method( int a(10), int b(23) , int c (89) ) { } - the runtime actual parameter values would be shown in the font and texture like the reference numbers are there for the method names . I don’t know whether this feature is there . Can any one comment?

                                        1 vote
                                        Vote
                                        Sign in
                                        Check!
                                        (thinking…)
                                        Reset
                                        or sign in with
                                        • facebook
                                        • google
                                          Password icon
                                          I agree to the terms of service
                                          Signed in as (Sign out)
                                          You have left! (?) (thinking…)
                                          1 comment  ·  Debugger  ·  Flag idea as inappropriate…  ·  Admin →
                                        • Fix the licensing problems

                                          Visual Studio 2013 just decided it wasn't licensed. It has been licensed since I installed it last year using our company Action Pack subscription.

                                          Logging in restored the licensing, but it cleared out all of my IDE settings for appearance, plugins, code completion etc.

                                          That is a hateful thing to do! When an IDE is mission critical and in use every day, it can take many months of tweaking and adjustment to get the settings correct for efficient working.

                                          I would suggest that when licensing is restored, ALL SETTINGS should also be restored.

                                          Or, even better, when the IDE is…

                                          1 vote
                                          Vote
                                          Sign in
                                          Check!
                                          (thinking…)
                                          Reset
                                          or sign in with
                                          • facebook
                                          • google
                                            Password icon
                                            I agree to the terms of service
                                            Signed in as (Sign out)
                                            You have left! (?) (thinking…)
                                            0 comments  ·  IDE  ·  Flag idea as inappropriate…  ·  Admin →
                                          • Don't see your idea?

                                          Feedback and Knowledge Base