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. fix issues with checking for NULL

    In C#, it is very easy to make the mistake of failing to realize that "a == null" invokes an operator == overload function defined in the class of "a". In other words, surprisingly, "a == null" is NOT always the same as System.Object.ReferenceEquals(a,null).

    Please consider adding the following simple, convenient, unambiguous functions to System.Object:

    public static bool IsNull(object obj) { return obj == null; }
    public static bool IsNotNull(object obj) { return obj != null; }

    Then you can use them like this:

    MyClass a = new MyClass();
    ...
    if (object.IsNull(a)) { ... }

    The proposed object.IsNull(a) always returns…

    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 →
    • Remove Visual Basic from Visual Studio 2013

      I love VS.NET but I never write code in Visual Basic. I always write code in C#.

      VS.NET 2013 does not allow anyone to un-install visual basic from vs.net

      older versions of vs.net did used to allow people to be able to pick the languages. but vs.net always installs the visual basic.

      please allow me to remove visual basic from vs.net

      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 →
      • fix some issues in System.Numerics.BigInteger

        Great work on System.Numerics.BigInteger. It is quite nice, and smartly designed, and will ultimately be appreciated by many people. Thanks for creating it. However it is still missing a few significant things.

        It lacks an efficient constructor. I wish you could add a constructor like this:

        BigInteger(uint[] data, int length, bool isNegative);

        Currently it only has a BigInteger(byte[]) constructor, however it is a problematic constructor:

        (1) It has messy/tricky (mistake-prone) handling of signed numbers (explained in the documentation but nevertheless tricky). It would be better to simply use a separate boolean parameter to indicate sign: Simple, reliable, efficient, no tricky…

        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  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
        • Add option to disable "*" on every line of multi-line C# comments

          In the C# text editor, I wish there was an option to disable the behavior where it automatically inserts an asterisk (at the beginning of the new line) every time you press the Enter key inside a /* multi-line 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…)
            0 comments  ·  Editor  ·  Flag idea as inappropriate…  ·  Admin →
          • Check overflow without throwing exception

            The C# "checked" and "unchecked" keywords are great, but I wish the .NET Framework had some simple functions (written in native assembler) for reporting overflow *without* throwing a time-consuming exception. This is especially useful for situations where the overflow is expected to occur commonly.

            Also for situations where throwing overflow exceptions is unacceptable because it enables a Denial-of-Service attack where the attacker triggers millions of overflow exceptions to delay the service (remember throwing .NET Exceptions is expensive).

            I suggest implementing functions in System.Int64, UInt64, Int32 (etc) like the following:

            // return true if successful, or false if overflow.
            public static…

            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  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
            • TF225001 creating a build definition requires a build controller be defined for this team project collection. there may not be any controll

              I am using VS2012
              TF225001 creating a build definition requires a build controller be defined for this team project collection. there may not be any controllers configured or you may not have permissions to view them. contact your team foundation server administrator

              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 →
              • Release bootstrapper packages through VS "Extensions and Updates"

                Currently the prerequisite component bootstrapper packages used by ClickOnce and Visual Studio Installer are either installed along with Visual Studio or must be downloaded manually. An example of this is the latest .Net Framework 4.5.2 package which you need to Google to find (searching the Microsoft website doesn't even work).

                Bootstrapper packages should be released along with other Visual Studio updates in the "Extensions and Updates" dialog as long as being listed in the Visual Studio Gallery online.

                Additionally, to enable the "Download prerequisites from the same location as my application" I shouldn't have to manually open the package.xml file…

                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…)
                  0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                • SQL Server 2014 ClickOnce bootstrapper packages

                  Visual Studio 2013 comes with bootstrapper packages for 'SqlExpress2008R2', 'SqlExpress2012' and 'SqlLocalDB2012'. SQL Server 2014 was released earlier this year but bootstrapper packages are still unavailable. Please release the bootstrapper packages.
                  Although it would be possible to create a package by myself there are a few problems which make this difficult and undesirable:
                  - What are the fwlink links for download packages from Microsoft's website
                  - What are the public keys for the packages

                  LocalDB in particular is supposed to be used as a replacement for SSCE which is deprecated. How can we use it if there's no simple way…

                  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…)
                    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                  • add BitScanForward and BitScanReverse functions to .NET Framework, like in C++.

                    The .NET Framework seems to be missing functions to give us safe access to the BitScanForward and BitScanReverse x86 instructions, for 32-bit and 64-bit integers.

                    Following you can see the C/C++ functions documented but there is no C# or .NET equivalent.
                    http://msdn.microsoft.com/en-us/library/wfd9z0bb(v=vs.100).aspx
                    http://msdn.microsoft.com/en-us/library/fbxyd7zd(v=vs.100).aspx

                    If you are bothered by the fact that BitScanForward returns 2 values (boolean and index), or if you wish to make the name less ambiguous than "BitScanForward", then you could make a slight modification as follows and name it "CountTrailingZeroBits".

                    int CountTrailingZeroBits64(UInt64 inValue)
                    {
                    int i;
                    return _BitScanForward64(&i, inValue) ? i : 64;
                    }

                    And similarly for…

                    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  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                    • support a tooltip to describe the area path

                      I suggest you support a tooltip to describe the area path. When you have multiple area paths, for other team members it is not clear what they all for. So a tooltip when mouse over could be nice.

                      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…)
                        2 comments  ·  Team Foundation Server  ·  Flag idea as inappropriate…  ·  Admin →
                      • Rename Visual Basic to V#

                        I believe it is time that the acronym BASIC (Beginner's All-purpose Symbolic Instruction Code) be disassociated from VB.

                        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 - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
                        • add heirarchy navigation combos when open .js and .config files

                          When opening java script file or configuration file, it will be helpful if there are the top two dropdown menus that we get when opening c# or vb.net classes files

                          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  ·  IDE  ·  Flag idea as inappropriate…  ·  Admin →
                          • Group solutions by branch in Team Explorer - Home

                            When you have multiple solutions in each branch, the list of available solutions for a TFS team project grows pretty quickly. It even says, "There were more solutions found, open them from [here]", which leads to the Source Control Explorer. It would be useful to group the solutions by branch, tree-view style, so that you could pick the right branch first, and then the right solution, because now you often find the right solution first (it's in black instead of gray), but then it's one from the wrong branch.

                            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  ·  Team Foundation Server  ·  Flag idea as inappropriate…  ·  Admin →
                            • Make it possible to rename or do looup of device names under Usage/Environment/Device

                              The graph and list of devices when you monitor a Windows Phone application is displayed as "cryptic" RM-821_eu_euro1_247 and/or RM-1045_1006. This does not tell you anything meaningful. Please add feature where you lookup these numbers to actual devices (Ie Nokia Lumia 930 etc) or make it possible to rename the devices

                              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  ·  Application Insights  ·  Flag idea as inappropriate…  ·  Admin →
                              • Custom UI controls for custom applications that interact with TFS

                                Based on a discussion on the ALM Champs list and ALM Rangers Forums:

                                I’d love control(s) that:
                                - Allows me to pick files and/or folders from TFVC and/or Git
                                - Allows me to configure and save a ACL for an object of my choosing (akin to the Team Administrator ACL)
                                - Allows me to select a Build (output)
                                - Allows me to select tests to run (akin to the automation… window)
                                - Allows me to pick one or more area’s/iterations
                                - Allows me to pick one or more teams
                                - Check-in UI
                                - etc

                                These would allow others to easily…

                                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…)
                                  0 comments  ·  Rangers Project  ·  Flag idea as inappropriate…  ·  Admin →
                                • Source control explorer should have a filetype column

                                  To assist in finding particular files in source control, the source control explorer should have more configurable columns and extra columns.
                                  FileType
                                  Number of versions of the file ever
                                  Number of versions of the file in this branch
                                  CreationDate,
                                  LastModifiedBy
                                  LastModifiedChangesNumber
                                  etc.

                                  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 →
                                  • source control changes to build process parameter changes

                                    Currently the Team Build process settings page is pretty much a CRUD screen. The problem with this is that it's very difficult to track why builds have failed over time, what's changed, who changed the settings, etc.

                                    It would be nice to see these changes appear in some sort of source controlled fashiion (perhaps as an <ugh>XML</ugh> file).

                                    It would be nice to be able to describe why these changes were being made / link them to work items etc.

                                    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 →
                                    • allow a description field to be entered against a manual build

                                      Often when doing build modification work I tweak a small change and then need to look at the results. It would be useful to be able to give some sort of reason that a build is being manually run (e.g. "trying again, this time with the FooBar external service started").

                                      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 →
                                      • navigate backwards should apply to source control explorer windows

                                        when I'm in source control explorer and I navigate to a folder, clicking the back button on the toolbar only navigates in previous source code locations. It does not navigate the source control.

                                        Expectation is that SCE is pretty similar to windows explorer and should therefore act similarly.

                                        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 →
                                        • RunCommandLine.ps1 needs to execute programs with elevated rights on Server 2012

                                          RunCommandLine.ps1 needs to execute programs with elevated rights on Server 2012

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

                                          Feedback and Knowledge Base