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. Better logging in htmllog

    I would like to be able to do more with my htmllog file. SmartBear's test complete product has a nice implementation. But to describe what I want:

    - I would like to be able to sort the log into hierarchical folders.
    - I would like to be able to assert specific things into the log. I would like all regular assertions go into the log.

    In this vein, I would like to be able to continue running a test when an assertion occurs. I

    Thanks

    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  ·  Visual Studio Test and Lab Management  ·  Flag idea as inappropriate…  ·  Admin →
    • Add close button to Splash screen (like in MS Office 2013)

      As a user I would like to have Close (and Minimize) button on the splash screen like in MS Office 2013 so that I can gracefully kill the application if needed.

      With a few plugins e.g. ReSharper load time increases significantly and I wish I didn’t have to wait the app to load before I can close it – especially if I launched it accidentally.

      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  ·  User Interface  ·  Flag idea as inappropriate…  ·  Admin →
      • Offer a checkbox as a workitem layout field type

        In Web Access, a Boolean field still has to have a pulldown list. Takes up space and hides the fact that there are only two acceptable values.

        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  ·  Team Foundation Server  ·  Flag idea as inappropriate…  ·  Admin →
        • Add more support for immutability to .NET (especially C#).

          Since the introduction of LINQ in .NET Framework 3, C# is supporting more and more functional programming features. Mutability of data is an important functional paradigm, which should definitely be there as an option in C# for those who would like to harness the power of the functional paradigm without moving to pure functional languages like F#.

          What I suggest is:

          Retain the support for mutable state as a default, since C# is first and foremost an Object Oriented language, while adding full support for immutability, which should be optional for developers to exercise or not as they choose.

          Immutability…

          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  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
          • Make these improvements to Microsoft Test Manager

            Here is a list of improvements that I like to see added to Microsoft Test Manager:
            - Make Testing Center dialog fill the entire screen: makes it easier to see more test plans
            - allow test suites (both static and query based) to inherit test results: that way I can craft e.g. query based test suites based on test case priority and report against failures in high/medium/low priority tests
            - make test result (pass/fail/block/not applicable) a field in MTM/TFS queries: allows for finding all those tests cases across multiple test suites that failed
            - make the associations between test case…

            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  ·  Visual Studio Test and Lab Management  ·  Flag idea as inappropriate…  ·  Admin →
            • Make TFS web access more web-like

              Currently, TFS web access is clearly designed by people who do not understand WEB and are deeply rooted in desktop applications.

              From TFS as web application I would expect that:
              - each task in lists is normal <a href link so I can middle click it to open it in new tab/window, copy link address to pass link to someone else
              - I can copy any text on any screen (like task ID on lists)
              - I can search the page using browser search (ctrl-f or /) - right now it is impossible because everything out of viewport is not…

              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 →
              • Move user settings out of .fsproj file

                Command line parameters for debugging are stored in the F# project file. This makes it hard to keep your commits clean.

                My suggestion is to do the same as C#, where this information is stored in .csproj.user, which is not put in version control.

                This doesn't really have anything to do with the language itself, but it *is* part of the package.

                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 - F# Tools  ·  Flag idea as inappropriate…  ·  Admin →
                • Allow WPF support without XAML

                  I can't stand XAML, the language is a hybrid of XML that was never intended to be used the way it is.

                  WPF looks great, and allows designers to do some pretty fun tricks, but dealing with the XAML code is a nightmare. Can you please allow us to create WPF applications without ever even seeing or writing a single character of XAML?

                  Allow for C# code to be written for an entire WPF application! Please!

                  From what I understand XAML is converted to C# anyway during compile time, so for those of us who can't stand XAML let us…

                  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  ·  XAML Tools  ·  Flag idea as inappropriate…  ·  Admin →
                  • Compliable strings

                    If you're writing a tracing and logging component you may well want to pass the current method name to your logging component. Rather than hard code it (then forget to change it when you change the method name) you can use reflection and the MethodBase class to retrieve the name:
                    System.Reflection.MethodBase currentMethod = System.Reflection.MethodBase.GetCurrentMethod();
                    System.Diagnostics.Debug.WriteLine(currentMethod.Name);
                    System.Diagnostics.Debug.WriteLine(currentMethod.DeclaringType.Name);
                    System.Diagnostics.Debug.WriteLine(currentMethod.DeclaringType.Namespace);

                    In C # 4.5 you can use attributes System.Runtime.CompilerServices.CallerMemberNameAttribute, System.Runtime.CompilerServices.CallerFilePathAttribute and System.Runtime.CompilerServices.CallerLineNumberAttribute for such purposes.

                    Frequent use of reflection dramatically reduces performance. Using special attributes is a contentious issue. Because attributes inherently are declarative. They obviously do not provide full support for the…

                    269 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…)
                      7 comments  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                    • Order Team Projects by name in the Properties window of a Release Template

                      It would be great to have the Team Projects ordered by name in the Combo Box of the Release Template Properties Window (see attached image).

                      It becomes difficult to find the desired Team Project in this list when our Collection has a large number of Projects.

                      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  ·  Release Management  ·  Flag idea as inappropriate…  ·  Admin →
                      • Suspend and Resume work on Requesting/Recieving a Review

                        Whenever i request a review, i want to suspend my work. I would like a checkbox in the request review form which, when enabled, implicitly suspends my work when i hit 'Submit Request'.
                        There should be 1 shelveset associated with this combined action.

                        Current procedure:
                        When I request a review, I usually want to work on another task until de review has been done. So immediately after requesting the review (which creates a shelveset), I suspend my work, which makes another, equivalent shelveset.
                        After my requested review had been done, i want to resume with the reviewed work exactly from…

                        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  ·  Team Foundation Server  ·  Flag idea as inappropriate…  ·  Admin →
                        • Support Assert.ThrowsException and UITestMethod attribute

                          VS2013Update2(or 3) supports Universal Project. It's a wonderful thing.

                          However,
                          since Microsoft.VisualStudio.TestPlatform.UnitTestFramework.AppContainer.dll is not contained in Windows Phone, we cannot write universal tests.

                          ---

                          ストアアプリ用の MSTest には、いくつかの新機能があります。パラメタライズドテストは、最も素晴らしい新機能でしょう(これは Windows と Phone ともに利用可)。

                          例外をテストする Assert.ThrowsException と、UI スレッドでテストを実行する UITestMethod 属性も、とても便利な新機能なのですが、残念ながら今のところ Windows ストア アプリ専用です。そのためユニバーサル プロジェクトでユニット テストを書くときにこれらの新機能が使えず、とても苦労することになります。

                          ---

                          see also: Microsoft Fakes for Windows Phone Unit Tests
                          https://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/5894285-microsoft-fakes-for-windows-phone-unit-tests

                          10 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  ·  Phone  ·  Flag idea as inappropriate…  ·  Admin →
                          • Provide the ability for project templates that load NuGet packages to Update to Latest at the time of project creation

                            This idea came out of a Mobile Services discussion - because of differing cadences, the project templates that load with VS projects are significantly out of date by the time the VS update that includes them is released. As a result, the project creation process involves first loading the NuGet packages referenced by the project and, then immediately waiting a similar amount of time while updating those very same NuGet packages to the latest versions (in the case of Zumo, they were as much as 3 revs & 3 months out of date with VS2013U3.)

                            This is certainly not assumed…

                            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…)
                              3 comments  ·  Project  ·  Flag idea as inappropriate…  ·  Admin →
                            • Using DSC, bring the Virtual Machines into the ALM lifecycle.

                              Using DSC as a VM "definition language", develop the process that Will allow the VMs to be generated as part of the buld process. This Will allow maintenance teams to generate development VMs on request, as well as test environments to be generated and integrated with the Test Management tooling.

                              53 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…)
                                under review  ·  0 comments  ·  Rangers Project  ·  Flag idea as inappropriate…  ·  Admin →
                              • xaml on android

                                I know Microsoft launched means to write JavaScript/html for both windows store and android, called Córdoba. But why is Microsoft forgetting about the developers using xaml/c#???? It would be awesome to be able to use the same xaml on both windows phone and android.

                                Who wants to own a mac? Just to be able to write apps for osx?

                                10 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  ·  Multi-Device Hybrid Apps  ·  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…

                                  26 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  ·  Flag idea as inappropriate…  ·  Admin →
                                  • Shift+Tab should unindent the line no matter where the cursor is on the line

                                    Since Shift+Tab has no meaning besides unindent, pressing this shortcut should trigger that behavior from anywhere on the line.

                                    Examples (period is space, pipe is cursor location, tab width is two spaces):
                                    ....|sometext -> shift+tab -> ..|sometext
                                    |....sometext -> shift+tab ->|..sometext
                                    ....some|text -> shift+tab -> ..some|text

                                    Currently only the first example works and the second and third have no effect. (Shift+Tab only unindents the line if the cursor is placed before any characters except whitespace. If the cursor is at the beginning of the line and shift tab is placed, nothing happens even if there is whitespace before the first…

                                    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  ·  Editor  ·  Flag idea as inappropriate…  ·  Admin →
                                    • set NullValue to "(Null)" instead of "throw exception" by default in dataset designer

                                      In dataset designer, by default "NullValue" of DataColumns is "throw exception".
                                      It's rather tricky to handle such exceptions.
                                      I'm quite sure it makes more sense to return null directly (or at least return DBNUll) by default. This is because I do not want to an exception every time when DBNull is returned as null is valid in most cases. If it's not valid, I can still get NullReferenceException. Why should it throw one more exception?
                                      If you do not agree with me, you may do an poll.
                                      However, of course, you can leave "throw exception" as an option.

                                      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  ·  Database Projects  ·  Flag idea as inappropriate…  ·  Admin →
                                      • Visual Studio Online just as project management (Scrum / Agile) and CI-build system

                                        See:

                                        http://codepecker.blogspot.fi/2014/03/using-visual-studio-online-with-github.html

                                        http://stackoverflow.com/questions/23211360/visual-studio-online-with-github

                                        We have public repositories on GitHub. we need to plan sprints on Visual Studio Online. But there is this restriction that you have to use VSO's code management system, in order to have integration.

                                        Would be nice if VSO let us use repos from elsewhere (like GitHub, CodePlex, BitBucket), and track those repositories (instead of us building a middle-tier service / cron-job / mirror for it).

                                        Thanks!

                                        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…)
                                          1 comment  ·  Flag idea as inappropriate…  ·  Admin →
                                        • Allow Lightswitch OData connection URI to be changed dynamically at runtime

                                          The following suggestion is a popular one and thankfully the LS Team provided support for changing database connection strings at runtime.

                                          http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/4406782-allow-lightswitch-data-source-connection-string-to

                                          _InitializingConnection is a great improvement, but as Xander's suggestion states, we need the same for OData...the new_SendingRequest method doesn't allow changing the RequestURI.

                                          Please also expose _BuildingRequest method so we can dynamically change Odata connection at runtime.

                                          The scenarios are all the same as the above mentioned suggestion, and several other duplicate suggestions exist.

                                          It would be great if votes could be combined or moved to this one.

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

                                          Feedback and Knowledge Base