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. let C# type inference downcast to a 'common supertype'

    interface A
    class B : A
    class C : A

    A a = condition ? new B() : new C();

    Compiler fails because it tries to cast B to C (or was it vice versa?).
    Daft workarounds: either cast one (or both) of the instances to A, or use an 'if' statement instead of the ternary operator.

    The two types B and C have a clear 'smallest common supertype' A. So come on MS, how hard can it be to determine the intersection of the class hierarchy of the 'then' and the 'else' branch? Look at the source code of…

    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  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
    • Send backup notification to non TFS Admin users

      In my environment, the TFS Admin users don't have mailboxes. I'm probably not the only one, since Admin accounts should only be used for Administrative tasks. In the Scheduled Backups I can only configure that TFS Admin users receive notifications if a backup fails or succeeds. Not a regular (mail enabled) user.
      It would be very nice if I could select different users for receiving backup alerts. Now I have to use a scheduled script that sends the Full_... log every day to me...

      42 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…)
        8 comments  ·  Team Foundation Server  ·  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  ·  Flag idea as inappropriate…  ·  Admin →
        • for a label's text property, allow a popup to see entire text

          the text property is rather small. It would be helpfull to popup up a box to see all of the text .

          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 →
          • Change the modeling project structure so it allows a team to work at the same time

            Visual Studio creates many *.uml files for diagrams in Modeling projects and this often leads to losing an entire diagram content.

            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  ·  Visual Studio Ultimate  ·  Flag idea as inappropriate…  ·  Admin →
            • Allow Custom Folder Ordering in Solution Explorer

              The alphabetical order of nodes in Solution Explorer doesn't match the way I work. I'd like to be able to drag nodes to a fixed order and have the solution file remember them.

              For example, I'm currently coding the markup in files within the Administration folder of an ASP.NET site. The VS alphabetical order means Administration sits above App_Code, App_Data and Bin which don't have the same type of content. I'd rather have all folders containing HTML grouped together.

              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  ·  User Interface  ·  Flag idea as inappropriate…  ·  Admin →
              • Allow for easy centralised management of visual studio setting for use in managed environments.

                Settings such as source control server, symbol server location, nuget repository location, etc... often are the same for multiple users. It would save a lot of time and also help in dev environment virtualisation scenarios if these settings could be set at insallation time or on a per machine basis.

                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 →
                • Add support for bucketed linked-lists in natvis files

                  So I have legacy code that uses a similar class to the C++11 unordered_map. That is, it is an associative array that uses the hash of a key to pick a bucket to get/put the value into.

                  Essentially the internal structure is an array with a set number of buckets and each bucket (element) is a linked list of values (with the head being null if there is nothing in the bucket).

                  I can see how to visualise an array and a linked list but I would like to combine the two structures in a natvis file so that it…

                  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…)
                    0 comments  ·  Debugger  ·  Flag idea as inappropriate…  ·  Admin →
                  • Code lenses should be toggle or hold to show (or something configurable)

                    While I applaud the increased visibility of things such as references and test coverage it currently (in VS2013 preview) inlines a smaller sized line of gray text that's interactive. This is more intrusive than I'd like it to be, I do care about the dependencies and tests, but not all the time.

                    I'd much prefer the annotations to be toggle or hold to show. Like the CodeLens stuff is with the ALT+1,2,3 combinations. On my QWERTY keyboard there's a § symbol to the left of the 1 key (this is not the case on all keyboards) but I'd very much…

                    42 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 →
                    • Preserve HTML formatting when exporting TFS work items to Outlook

                      Exporting work items to Outlook is extremely handy. But it's such a shame that the Description HTML field cannot be used to show the nicely formatted HTML.

                      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  ·  Team Foundation Server  ·  Flag idea as inappropriate…  ·  Admin →
                      • Add LocalDB to Clickonce automatic publishing Prerequisite

                        We need an easy way to publish an app with LocalDB. Clickonce does not currently support this as an easy prerequisite the same way it does SQL Server Express, or Compact. Developers will likely use LocalDB as a solution more if it was easier to publish. Not everyone is going to be wiling to spend 2- 5 hours researching how to hard code a bootstrap to publish LocalDB when ClickOnce does it with a check box. I think developers like myself will remain resistant to using this until Microsoft makes it easier to publish.

                        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…)
                          2 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                        • NetPeerTcpBinding - Please Restore it

                          NetPeerTcpBinding has been marked obsolete in Net Framework 4.5.
                          There is no substitute for it, and it is valueable in creating small, intercommunication schemes without having to create an elaborate server. This binding seems to work great for simple tasks, why get rid of it? Please do not make this obsolete.

                          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…)
                            2 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                          • With end with

                            One help to developer

                            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 →
                            • Update the Winform Webbrowser control to support Async/Await

                              Currently, when navigating to a web page, the only way to run code after the page has loaded is to either use events (DocumentCompleted) or to run a loop calling DoEvents and checking ReadyState.

                              I think neither is a good alternative. It would be great to have an Async method Nagivate(Url).

                              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  ·  Windows Forms  ·  Flag idea as inappropriate…  ·  Admin →
                              • Run test from Work item

                                I want to be able to run the Test Case directly from the Test Case.

                                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  ·  Visual Studio Test and Lab Management  ·  Flag idea as inappropriate…  ·  Admin →
                                • Install SQL Server Data Tools for BI on the Team Foundation Service Build system

                                  If SQL Data Tools for BI were installed on the Team Foundation Service build system, then Integration Services projects could be built by simply using the invokeprocess activity to call devenv.exe.

                                  This would allow ISPACs to be created in the same way that currently DACPACs are created from the Data-Tier projects

                                  (Of course, ideally, MSBuild would be amended to build SSIS projects too, but I'd be happy with on step at a time.)

                                  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 →
                                  • Support the Multilingual App Toolkit to WPF or Windows applications

                                    The Multilingual App Toolkit is only working for Windows Store apps, this is a great way/help to have multi-language applications and it is needed for any type of applications not only Windows Store apps.

                                    57 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 →
                                    • PascalCase code generation from WSDL

                                      when generating C# code from an WSDL, camelCased Methods will be imported as such. Instead, they should be rewritten to PascalCase and mapped using the XmlTypeAttribute.

                                      The generated code might also refactored automatically for better readability. (ie. removing Namespaces by adding using-Statements on top)

                                      0 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 →
                                      • CC emails

                                        Add a text box to add email ids for people or group, to be cc'ed when the bug is filed so that they get notofied when any updates made to the bug

                                        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  ·  Flag idea as inappropriate…  ·  Admin →
                                        • FIRST and LAST sections in foreach blocks

                                          foreach (object elem in elems) {
                                          first { // do something, without elem we cann't do it
                                          }
                                          //..........
                                          last { // do something, but we have the ref to elem
                                          }
                                          }

                                          it will be better than

                                          bool first = true;
                                          object lastElem = null;
                                          foreach (object elem in elems) {
                                          if (first) {
                                          first = false;
                                          // ...
                                          }
                                          // ...
                                          lastElem = elem;
                                          }
                                          if (!first) {
                                          // ...
                                          }

                                          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…)
                                            1 comment  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                                          • Don't see your idea?

                                          Feedback and Knowledge Base