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. 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…

    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  ·  Rangers Project  ·  Flag idea as inappropriate…  ·  Admin →
    • Increase default width for "ID" column or make it automatically adjustable in LINK controls

      In TFS link controls, it is very annoying to constantly have to re-size columns every time a window is opened in TFS (as their width is not saved before closing window).
      While I believe it may be hard to fix this issue globally for all columns, my proposal is to fix it at least for one particular case - "ID" column for linked work items (bugs, tasks, user stories, etc.).
      I see two ways for this:
      - adjust automatically the width of "ID" column to be able to see work item ID at once the form is opened
      - increase…

      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  ·  Team Foundation Server  ·  Flag idea as inappropriate…  ·  Admin →
      • Normal library for C# work with Videos

        Please publish normal library to work with videos using C#. It took my 5 days to work about that and now too I have not done that..

        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  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
        • Allow .NET games on Xbox One

          Yesterday was announced that Xbox One will allow indie developer to easily publish games on Xbox One.

          Lots of indie developers and small game company are using .NET to develop games. Today, we are able to easily target several Windows platforms (Windows Desktop, Windows RT and Windows Phone 8) as well as other platforms thanks to Mono from Xamarin.

          As we don't know yet the details about this indie developer program for Xbox One, we would love to use .NET on this platform - with everything accessible, from latest 4.5 with async, to unsafe code and native code access through…

          14,938 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…)
            271 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
          • Enable Kanban Column field to be used in work item queries

            It is a constant source of frustration for our users that they are unable to use the Kanban Column field in work item queries. This field is recorded in the history of a work item whenever it is moved from one Kanban column to another but this information is not available to be used for reporting purposes. This would allow various additional Kanban metrics to be easily produced.

            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  ·  Team Foundation Server  ·  Flag idea as inappropriate…  ·  Admin →
            • Bring back the "VISUAL" in visual studio

              Visual studio used to look really great. However, everything about the 2012/13/14 interface looks.. amateurish.

              -The icon looks like something a 3 year old did.

              -The lack of depth makes the whole thing jump into my face. Please bring back the "line work" with contrast.

              We have incredibly high resolution monitors that can render beautiful images. To go all grey is such a step backwards.

              In the old days people scrambled to get color monitors just to get away from the ho-hum grayness of working with a machine all day. To send us backwards is irritating at best and abusive…

              15 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…)
                5 comments  ·  IDE  ·  Flag idea as inappropriate…  ·  Admin →
              • A cache-key parameter when using PartialCaching and TemplateControl.LoadControl(string virtualPath)

                If you use PartialCaching on your WebUserControls and load them dynamically with TemplateControl.LoadControl() in a for-loop block all of those UserControls will have the same output results!

                Controls should be cached with different keys but Asp.net assign duplicated key for all controls. This happens because TemplateControl.LoadControl use "AddStackContextToHashCode" method to generate a cache-key.

                for example:

                // All WebUserControls have outputcache directive in their ascx files!
                for(var controlName in lstControlNames)
                {
                var control = this.LoadControl(controlName);
                this.Controls.Add(control);
                }
                --------------------------------------------------
                All control outputs will be the same after when they cached by Asp.net, that's becasue AddStackContextToHashCode generates the same cacheKey for all controls…

                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  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                • User Voice: Let the the USERS decide when a suggestion is "completed"!

                  Several of the features that I care about and have voted on have been marked as "completed" on user voice -- but they're clearly not, a good example of this is:

                  https://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2654486-vs11-bring-back-the-old-pending-changes-window

                  But there have been many others -- and you can see in the comments for such items that many users completely disagree that the action taken qualifies as "completing" the solution to the initial problem.

                  Let us vote on the response as to whether it's satisfactory or not (or even Like/Dislike) -- if a response gets enough negative votes (say, more than 50%?), the User Voice team team…

                  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  ·  MSDN  ·  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

                    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…)
                      2 comments  ·  Phone  ·  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 →
                      • Add a new directory-based solution or project type

                        Visual Studio should support opening a directory and working with 'directory-based' projects using actual files on disk (no solution/project files, but instead Visual Studio can store project settings inside '.vs' hidden folder, similar to .idea in WebStorm / ItelliJ). The existing Website project type is not an option!

                        Visual Studio should support working with existing directory structures widely used in the front-end community. See project templates like 'angular-seed' or templates in 'yeoman' gallery. Developers should be able to work comfortably with these directory structures and actual files on disk, without any tweaks. Also it should have a first-class console window…

                        49 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…)
                          5 comments  ·  IDE  ·  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 →
                          • Static Interfaces

                            I've been thinking about static interfaces, and I think they would be really useful for software which uses reflection to identify and assemble components. Currently I find myself having to design around this limitation with unnecessary factories or by enforcing conditions at runtime (like checking for methods and throwing exceptions if they aren't present).
                            It would be great if the following was possible:

                            foreach (var type in Assembly.GetExecutingAssembly().GetTypes().Where(t => t is IStaticInterfaceType))
                            (type as IStaticInterfaceType).StaticMethod();
                            This could be used for singleton patterns, initialization methods, registration methods, constructor contracts, or any number of other things.

                            I don't know how much overhead…

                            24 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 →
                            • 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…

                              271 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 →
                              • Fix Silverlight 5 auto target on PCL definition

                                When creating a PCL and choosing NET Framework 4.5, SilverLight 5 is automatically included as they both had the same compatibility, but SL 5 does not support IObservable, for instance.

                                This automatic targeting based on compatibility should be a warning only!!

                                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 →
                                • Kanban board: More customizations and usability features

                                  Kanban board should provide additional capabilities so that we can effectively move existing "physical" Kanban using team or from competitive products to TFS. Some important customization capabilities:
                                  Which field to display on the card
                                  Ability to choose number of card width for a specific state/column
                                  Ability to have horizontal swimlane with different states (for different class of services for example)
                                  Ability to access the PBI related tasks as a sub-board

                                  And also usability features:
                                  - functionalities for large display for team board: auto refresh, auto scroll, etc.
                                  - change the priority/positionning of the card directly on the board
                                  - Ability…

                                  94 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 →
                                  • Global variables at release management

                                    At release management it would be great to use "globale" build varaibles. For example build path, build name, drop location. Also define variables at release template to use this for more custom tasks. Also fixed variables like, date, time and so on.

                                    240 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…)
                                      6 comments  ·  Release Management  ·  Flag idea as inappropriate…  ·  Admin →
                                    • Implement AD FS for TFS

                                      Our organisation policy does not allow us to use TFS Online / visualstudio.com. For on-premises TFS instances, ADFS is not supported at the moment. I'm hoping a future update will incorporate the ADFS bits for TFS Online in the on-prem version as well. That would open up some authentication schemes we'd like to use.

                                      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  ·  Team Foundation Server  ·  Flag idea as inappropriate…  ·  Admin →
                                      • Provide more helpful and in-depth documentation

                                        For example, what are all of the settings in the VSTU "Configuration" window for? I know most are self-explanatory, such as "Send console to Visual Studio", but what about "Extensions filter"? What is that used for? What does it do? Or what about the DotSettings file? Why might a user not want it to be generated?

                                        Also, "Project File Generation" page in the Documentation is severely lacking. It would be really nice if there was more that covered how to use SyntaxTree.VisualStudio.Unity.Bridge. What kinds of things can this do? How should it be used? Provide some more real-world examples.

                                        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  ·  Visual Studio Tools for Unity  ·  Flag idea as inappropriate…  ·  Admin →
                                        • Entity Framework (EF) & Linq to use in JavaScript (NodeJS)

                                          I have seen that exist an unofficial linq library for JS:
                                          http://linqjs.codeplex.com
                                          https://github.com/mihaifm/linq

                                          NodeJS could be better if Microsoft create the official libraries. With NodeJS and EF We could connect with relational databases.

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

                                          Feedback and Knowledge Base