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: https://connect.microsoft.com/visualstudio.

To review the current UserVoice statuses and their definitions, please review our “What Does the Status of My Feedback Mean?” article.

We would also like to invite you to check out the Announcements section we have added to this site, where we will be posting special opportunities for you to participate in.

We look forward to hearing from you!

The 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 support and comment on it.

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

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

  • Hot ideas
  • Top ideas
  • New ideas
  • My feedback
  1. var null initialize

    I write code like so:

    string newFishName = null;

    or

    var newFishName = (string)null;

    because I can't write

    var newFishName = String.null;

    yet I can write

    var newFishName = String.Empty;

    I know it's just a syntactic thing, but for consistency

    var newFishName = String.null;

    might look better?

    4 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 →
    • Test Manager - Clone Requierments and Cases to an existing Test Plan

      I want to be able to clone user stories (or PBIs) with their test cases into a next test plan.
      example:
      we open a new test plan #2 and wrote tests into the requirements.
      then we open a test suite called Regression - we wanted to collect into it all User Stories and their test cases from the old Test Plans.

      and, No. we didn't want to Copy because some test need to be customized.

      21 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  ·  Visual Studio Test and Lab Management  ·  Flag idea as inappropriate…  ·  Admin →
      • Add the ability to set privilege level for each unit test method.

        Programs can behave differently depending on whether the current user is running as admin or not. Currently there doesn't seem to be a way to unit test this other than opening two instances of VS with different permissions and running the unit tests twice and checking if the right ones pass.

        4 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 Test and Lab Management  ·  Flag idea as inappropriate…  ·  Admin →
        • [Test manager] Improve screen estate for steps when designing test cases

          In Microsoft test manager 2013, the space reserved for editing and creating test steps is very limited, about 1/6th of the total screen. This makes it harder for users to design larger test cases.

          If possible, it would be nice to have panes (like "Solution explorer", "Error list", "Test results" in VS) for all sections that make up a test case. These sections could for example be: a test suite tree, the header (title, state, assigned to, priority,...), a section with the steps (summary, links, attachment could also be included in this pane) and a section for parameters,...
          This way,…

          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…)
            0 comments  ·  Visual Studio Test and Lab Management  ·  Flag idea as inappropriate…  ·  Admin →
          • itemtemplate

            As a freelancer I often have to work on others code.
            I get ItemTemplates for "their" work and these start to clutter my VS.NET installation.

            Introducing a project local Template and Snippet folder would make a lot of things easier

            12 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  ·  IDE  ·  Flag idea as inappropriate…  ·  Admin →
            • Make the debugger stick to the current thread instead of jumping around between threads!

              Please, please fix this! Debugging multithreaded applications is hard enough as it is, without having to manhandle the debugger just so it does the obvious thing you want.

              I'm sure everyone knows what I'm talking about. You're stepping through your function, and suddenly your instruction pointer jumps somewhere unexpected and none of the variable values make sense and you realize you're not in the thread you thought you were in. It's really tough or impossible to get back to where you were in the thread you cared about. Or you set a breakpoint two instructions down, and it may be…

              7 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  ·  Debugger  ·  Flag idea as inappropriate…  ·  Admin →
              • Solution Explorer should support CTRL-C CTRL-V in VisualC++ projects

                It should be easy to add a new file in the solution explorer by just using CTRL-C / CTRL-V to create a copy of an existing file and then changing the new file accordingly.

                The current behaviour is akward.

                - Create new Project > Visual C++ > Win32 Console Application
                - Select stdafx.cpp > Press CTRL-C > Press CTRL-V

                The expected behaviour would be that a copy of the file is created ("stdafx - Copy.cpp") and the new file is added to the project.

                Instead I get the following error message "Cannot copy when Show all files is turned off"

                5 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  ·  Flag idea as inappropriate…  ·  Admin →
                • Support Meteor JS Development

                  VS works great as an IDE for Meteor, but debugging support would be amazing!

                  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…)
                    0 comments  ·  Languages - JavaScript  ·  Flag idea as inappropriate…  ·  Admin →
                  • Automatic formatting of C++ source is very helpful, but ...

                    There are problems with the automatic formatting of "if" statements.

                    For example, if I have a statement in the form of:

                    if (function_name(parm1, parm2,
                    parm3,parm4)) {

                    it is not formatted as illustrated above. I believe everyone, regardless of their preferences for spacing and brace placement can agree that this is the preferred formatting. What is actually done is:

                    if (function_name(parm1, parm2,
                    parm3,parm4)) {

                    This is clearly not correct. To make this clear, the continuation of function arguments is not aligned to the first argument but aligned to the beginning of the function call.

                    9 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 →
                    • Change Visual Studio Online account region

                      My Visual Studio Online account was create in North Central US. I'd like an option to change the region, so that my data is stored closer to my users.

                      260 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…)
                      • inline browser

                        Update inline browser with no registry hacks
                        support the newer browser version(s) with locks via class update
                        use installed version by default not 7
                        use something like webbrowser.version = 7,8,9, 0(current installed?)

                        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  ·  Compatibility  ·  Flag idea as inappropriate…  ·  Admin →
                        • Operator Try get Index Otherwise.

                          I would like to Handle Indexing Exceptions by adding Default value after index.

                          I will Show the operator as @.(just an example sign to clarify)

                          Example 1:

                          string[] args = new string[3];

                          string str = args[4] @ "default" ; // Try get args[4]. otherwise "default"

                          Example 2:

                          List<int> RGBA_Color = new List<int> {55, 55, 55};

                          int alpha = RGBA_Color[3] @ 0 ; // Try get value otherwise 0

                          Example 3:

                          Dictionary<string , Action> _dic;

                          _dic["Key"] @ (() => { }) (); // Try get value otherwise

                          This can really help Improve code readabilty. Specially in cases that we have unknown…

                          9 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 →
                          • Global Cordova Elements Settings for New Projects

                            Ideally, VS2015 Cordova projects would have a settings in Tools > Options > Tools for Apache Cordova to add elements that are applied to all newly created Cordova Projects. For example, cordova-android version, etc.
                            <engine name="android" spec="4.1.0" />
                            This would solve the problem of having to modify the config.xml for each project.

                            Or have a property window on the project that displays (no editing) all the cordova specific information (cordova-android version, etc.). This window can also display node packages, etc. related to the project.

                            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  ·  Multi-Device Hybrid Apps  ·  Flag idea as inappropriate…  ·  Admin →
                            • IntPtr literal

                              I propose that a future version of the C# and VB.NET support a literal syntax for System.IntPtr and System.UIntPtr. For example:

                              var example = 2n;
                              var example2 = 2un;

                              I am not strongly tied the `n` suffix.

                              The primary driver for this is platform invoke. Many Win32 APIs take handles to magic values. This also brings parity with F#, which already supports this feature.

                              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 →
                              • Filter out AlwaysOn requests

                                As we all know WebApps (formerly WebSites) offer the AlwaysOn feature to keep the WebApp alive at all times. As it turns out this is done by regular HTTP requests to the WebApp URL. The UserAgent string is "AlwaysOn".

                                These request are counted as regular users and sessions in the AppInsights usage profiles.

                                It would be nice if AppInsights would provide the ability to filter out these requests or just irgnore them so that these requests don't pollute the real user and session count.

                                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 →
                                • Math could use Trigonomerty calculation functions!

                                  The atteched file could easily be part of MATH and also there are alot of other trig. functions that could be part of that.

                                  Would be really handy for the devalopement of software calculated apps like resize, location calcutations ...

                                  Also Resize options for SIZE and RECTAGLE would be a big plus with possitioning options: top left; center right...

                                  Those would really speed developing up so developers don't have to write function that could easily be part of Math or even more in snippets; but personally I prefer Math for they are mathematical calculations.

                                  DJ

                                  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  ·  Editor  ·  Flag idea as inappropriate…  ·  Admin →
                                  • Actually implement Exception.ToString correctly. E.g. AggregateException.ToString() { foreach( exception in InnerException )

                                    Actually implement Exception.ToString correctly.

                                    E.g. AggregateException.ToString() { foreach( exception in InnerException ) print out exception.ToString(); }
                                    Exception.ToString() { print out error message and stack trace; }
                                    WebException.ToString() { print out the error response; }

                                    30 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 →
                                    • Task Runner: add ConfigurationName command line param to Gulp/Grunt command line

                                      There's currently no easy way of altering the behavior of Gulp scripts based on the current project build configuration (Release/Debug etc).

                                      If you passed the current build config as a parameter to gulp we could use something like yargs (http://stackoverflow.com/questions/23023650/is-it-possible-to-pass-a-flag-to-gulp-to-have-it-run-tasks-in-different-ways) to adjust script processing as required, for example only perform Javascript minification on Release builds.

                                      Example command line (note extra command line arg at the end):

                                      cmd.exe /c gulp -b "C:\Solution1\Test.WebSite" --color --gulpfile "C:\Solution1\Test.WebSite\Gulpfile.js" default -Release

                                      (Note: I haven't used Grunt but I assume the same problem also exists when running Grunt via the task scheduler.)

                                      Cheers,
                                      Nick

                                      4 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  ·  General  ·  Flag idea as inappropriate…  ·  Admin →
                                      • Visual Studio Code as a universal app

                                        Visual Studio Code as a Universal App. This would allow me to do some light coding during down time as well as be a great tool with the Continuum on my phone.

                                        5 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  ·  Editor  ·  Flag idea as inappropriate…  ·  Admin →
                                        • wait until the line looses focus to show corrrections/errors

                                          It is very annoying when it tries to correct me in the middle of a line, when what I am typing doesn't make perfect sense, but will when I finish the line.

                                          6 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 - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
                                          • Don't see your idea?

                                          Feedback and Knowledge Base