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

    267 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 →
    • 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.

      28 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 →
      • Web deploy parameterization in website project

        Web.config parameterisation is not working for "website project" in visual studio 2013. I have created Parameters.xml and tried “webdeploy” as mentioned in http://msdn.microsoft.com/en-us/library/ff398068.aspx.
        Based on my test, the data that in our own parameters.xml file won’t be added to the generated parameters.xml and SetParameters.xml files when I created a web deploy package.
        Big “web site” projects are hard to convert to “web application" project type. Lot of people may face the same issue.
        I would suggest incorporating web.config parameterisation featured with "Website Project" as well.

        22 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 →
        • VS IDE should support file patterns in project files

          Patterns should be preserved and unmodified when working with *proj files. If I specify a pattern with something like **/*.cs for my code files. If I add a new .cs file that fits that pattern the .csproj file should not be modified.

          MSBuild already respects this, but the IDE will always modify the project file.

          For numerous scenarios this could simplify the diff / merge process.

          2,956 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…)
            16 comments  ·  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…

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

              72 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 →
              • 1,146 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…)
                  28 comments  ·  General  ·  Flag idea as inappropriate…  ·  Admin →
                • Allow editing of send to address for email alerts in VSO

                  Allow users to specify which emails they want to send the alert to, both for team and individual alerts. Right now changing the individual alert address changes the default mail address for all alerts for that user, and team alerts send to address cannot be edited at all.

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

                    19 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  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                    • Add an "order" option in Team Web Access for manual test case execution mimicking the order in MTM

                      When I have manual test suites created in MTM I can designate an "Order" for the tests. If I execute (run) the tests in MTM, it runs in the order that is associated to the suite. When I have users log into the Team Web Access site to execute the manual tests, the tests do not execute in the order set in MTM, they execute according to the ID associated to the test case.

                      39 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 →
                      • Allow to save tests runs and restore crashed ones - Visual Studio Test Explorer

                        Save the last run in a temporary location and been able to loaded at any time. Been working with Visual Studio Test 2010 and this always been a problem, now with Visual Studio 2013 Update 2 I'm getting random crashes at the middle of my work, is becoming annoying and a wastes of time, every-time Visual Studio crashes or become unresponsive I have to rerun the whole regression ( > 1000 test, ~2 hours to complete)

                        17 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 →
                        • Universal Apps Client for Lightswitch

                          Universal App Client for Lightswitch

                          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  ·  LightSwitch  ·  Flag idea as inappropriate…  ·  Admin →
                          • Allow for build promotions in Team Build

                            I have several build definitions: CI, Deploy to Staging, and Deploy to Production. I want to be able to execute the Staging and Production builds using the output from the CI build meaning I want to promote CI version 1.2.3.4 to Staging. Then I want to promote CI version 1.2.3.4 to production.

                            28 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 an open API to allow us to extend Code Lens (now that Roslyn is open sourced)

                              Please open up the API for CodeLens now that Roslyn is available to the wider public. It would allow to to do some great stuff on the local code. I would not mind a model that only works locally for now, though a server side API would be nice.

                              87 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  ·  Extension  ·  Flag idea as inappropriate…  ·  Admin →
                              • Visual Studio for Mac Os x

                                Dear Madam and sir;

                                We need Full Version of Visual Studio for Mac Os x.
                                And language of programming such as:

                                -C
                                -C++
                                -C#
                                -VB
                                -F#
                                -HTML
                                -MHTML

                                Thanks,

                                1,125 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…)
                                  35 comments  ·  Compatibility  ·  Flag idea as inappropriate…  ·  Admin →
                                • Enable customize columns for the taskboard in TFS 2013

                                  We can customize the columns at the PBI level with the Scrum template in TFS 2013, it would be great if we could also customize the columns in the taskboard/sprint board. Specifically, we'd like to add additional columns.

                                  44 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 →
                                  • odata v4

                                    upgrade Lightswitch OData to v4

                                    20 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 →
                                    • YAML "in addition to" JSON

                                      YAML is recursive acronym of "YAML ain't a markup language"

                                      YAML specs: http://www.yaml.org/spec/
                                      File extension: .yml or .yaml

                                      Why YAML:

                                      Microsoft was backing XML, while the whole (other) world moved from XML to JSON (a key-value pair format with less footprints and noise). Microsoft was _still_ backing XML while the rest of the world move from JSON to YAML (another key-value pair format with minimalistic footprints and noise).

                                      All those folks suggesting "JSON is new XML" must be living in pervious century: JSON is OLD XML and YAML is new JSON!

                                      In VS2013 Update 2, Visual studio team (with WebDev)…

                                      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…)
                                        5 comments  ·  Compatibility  ·  Flag idea as inappropriate…  ·  Admin →
                                      • Support <LISTITEM value="[project]\<TheCurrentTeam>" /> in TFS work Item AssignedTo Field Allowed Values

                                        It is possible to currently customize work item template so that it filters AssignedTo field list of users to a given team (<LISTITEM value="[project]\Team1" />) or to a security group (<LISTITEM value="[project]\Contributors" />). But when you have multiple teams defined in a team project the only sensible way to filter is using <LISTITEM value="[project]\Contributors" /> because if a "[Project]\Team1" is used, in Team2 it is only possible to assign work items to members of Team1 (and that is not the desired outcome).

                                        I believe if there is a way for us to define" [Project]\<TheCurrentTeam>" in LISTITEM of the ALLOWEDVALUES of…

                                        38 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 →
                                        • Allow readonly modifier on local variables, not just properties.

                                          Readonly modifiers shouldn't be canned for just instance-level properties on a class. Readonly isn't always to explicitly prevent subsequent code from changing a value. I would argue readonly modifiers can significantly improve code comprehension and readability:

                                          Imagine the following code in a method definition, where prod_count would be a local:

                                          int prod_count = (List<Product>) prods.Count;

                                          If the compiler would allow this:
                                          readonly int prod_count = (List<Product>) prods.Count;

                                          All of a sudden, I know as a developer reading the code that I don't have to scan for prod_count getting reassigned to something...I can mentally write it off as, okay that's just…

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

                                          Feedback and Knowledge Base