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. ensure required variables and properties are set during construction when using new T { }

    To create a object and assign the initial variables, you currently have to create a constructor (or a factory method) to construct the object.

    class Widget
    {
    public Widget(int a, int b, int c)
    {
    this.a = a;
    this.b = b;
    this.c = c;
    }
    public readonly int a;
    public readonly int b;
    public readonly int c;
    ...
    }

    Alternatively,

    class WidgetFactory
    {
    public CreateWidget(int a, int b, int c)
    {
    return new Widget
    {
    a = a,
    b = b,
    c = c
    }
    }
    }

    I propose that C# 5 add a keyword "required" to force public variables…

    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 →
    • Add SFTP/SCP as a publish method for web projects

      SFTP/SCP is not available as a publish method for web projects. This means that you have to publish to a local directory and then copy the files to the remote server via an external SFTP/SCP tool if you server or hosting provider uses that protocol, which is cumbersome.

      It would be more convenient to have the option built-in, since a lot of system admins are moving to SFTP/SCP for security purposes.

      63 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  ·  Visual Studio Ultimate  ·  Flag idea as inappropriate…  ·  Admin →
      • Allow instance variables in Lazy<T> constructor

        Currently, creating a new Lazy<T> requires passing a Func<T> to the constructor. This works just fine when you're either defining the function in a static context (via default assignment) or when you're already in an instance context (inside a constructor or similar function).

        However, this means that under most circumstances, you have to separate the declaration from the assignment, which makes code being converted from a manually lazy-loaded property to a Lazy<T> that much harder to read and maintain.

        I propose creating a new constructor for Lazy<T> which accepts a Func<B,T>, where the B passed in is automatically "this".

        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  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
        • Add the possibility to have multiple TFS Service Accounts for the same Windows Live ID

          In the Team Foundation Service I can't find any way of having multiple TFS Service Accounts for one single Windows Live Id.
          This is a shame since I must then create an extra Windows Live ID in order to separate my personal and work account.
          Isn't the whole point with Windows Live ID to have ONE account for multiple services ?

          When I log on to the TFS Service, the next page I get is the My Accounts page, Could it be possible to have the abillity to create another account here and also select the one of which you…

          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 →
          • Add the Visual Basic PowerPacks DataRepeater to the framework.

            Include the DataRepeater in Windows Forms Controls library to complement the DataGridView. As it is, a separate dll (Microsoft.VisualBasic.PowerPacks) must be deployed with the application to get this control. This would bring Windows Forms development in-line with ASP.NET and WPF.

            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  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
            • Generate constructor from fields (With refractor)

              Too often I find myself copying field types and names to the argument declaration area of my constructor. It would be nice if you could select the fields you want to assign with your constructor and then have the refractor generate a constructor for these fields.
              Example (C#):
              class someClass
              {
              int field1; // <- |
              object field2; // <- | select these two fields
              }

              Refractor -> create constructor
              result:

              class someClass
              {
              int field1;
              object field2;

              someClass(int field1, object field2)
              {
              this.field1 = field1;
              this.field2 = field2;
              }
              }

              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  ·  Editor  ·  Flag idea as inappropriate…  ·  Admin →
              • Autogenerate comments for populating Intellisense

                In C#, if you type /// comments, those comments appear in Intellisense.
                If you don't have a comment, no intellisense info.
                There are tools that will analyze your function names and the types of your parameters and autogenerate sentences to populate the comments.

                Any comment that can be autogenerated from the code becomes a maintenance burden. If those comments can be autogenerated from the code, then Intellisense could generate the comments whenever it tries to display a function that has no /// comments. It would save us from adding to our source code maintenance weight and would still give us…

                11 votes
                Vote
                Sign in
                Check!
                (thinking…)
                Reset
                or sign in with
                • facebook
                • google
                  Password icon
                  I agree to the terms of service
                  Signed in as (Sign out)
                  You have left! (?) (thinking…)
                  0 comments  ·  IDE  ·  Flag idea as inappropriate…  ·  Admin →
                • enable MTM to run multiple test cases in parallel in one test agent

                  It would be a very useful feature and MSTest.exe has just supported parallel runs. Cannot imagine MTM does not support it.

                  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  ·  Visual Studio Test and Lab Management  ·  Flag idea as inappropriate…  ·  Admin →
                  • Record Transactions while recording a web or load test script

                    While we are registering the script for the load or web perf test, we have 2 buttonslinks available to allow mark start and end of a transaction a sort of "start transaction here" and "stop transaction here". Which is more productive and easier for testers instead of finlizing recording then coming back later to do it with comments or add the transactions to the web performance which is "1.Open a test Web performance and load >> Right-click and select Insert Transaction >> Add Transaction .........

                    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 →
                    • Vertical Split by default

                      I've got my work items queries, and when I double-click them the results are shown (of course). The default view is the horizontal split (list of the work items on top, and the details of the selected one below). However, I prefer the vertical split view (list of the work items on the left, and the details of the selected on the right).

                      I can change the split view easily, but I need to do it every time I open the results window. Is there any way to configure this windows to open with the vertical split by default?

                      11 votes
                      Vote
                      Sign in
                      Check!
                      (thinking…)
                      Reset
                      or sign in with
                      • facebook
                      • google
                        Password icon
                        I agree to the terms of service
                        Signed in as (Sign out)
                        You have left! (?) (thinking…)
                        2 comments  ·  Team Foundation Server  ·  Flag idea as inappropriate…  ·  Admin →
                      • Better Typescript Support

                        There has to be better Typescript support. Some ideas:

                        - better refactoring
                        - F12 go to definition
                        - more "connections" to angular and ohter js-frameworks
                        - etc. (just look at c# editing and debugging features)

                        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  ·  Editor  ·  Flag idea as inappropriate…  ·  Admin →
                        • Add AddressSanitizer a la Clang.

                          Basically instrument allocations, reads and writes to catch memory scribbles at word granularity.

                          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…)
                            1 comment  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                          • Add distraction free mode like in Sublime Text

                            "Distraction Free mode is full screen, with an extra emphasis on your content. All user interface chrome is hidden, leaving you with nothing but the file you’re working on. It’s a great help when you want to ignore everything else and just write."

                            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…)
                              1 comment  ·  Editor  ·  Flag idea as inappropriate…  ·  Admin →
                            • Support DRM protected streams in WPF media element

                              WPF media element cannot consume protected streams - the integration with MS PlayReady is missing. PlayReady is supported only in Silverlight and Metro applications but .NET developers cannot create standalone player in WPF.

                              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  ·  Flag idea as inappropriate…  ·  Admin →
                              • Searching in Properties Window

                                It would be very helpful to place a search (filter) box on the top of properties window.
                                Like on the top of solution explorer.

                                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  ·  IDE  ·  Flag idea as inappropriate…  ·  Admin →
                                • Database update with test steps for Automated runs

                                  When we run automated test cases (assicated with codedUI) from Test Manager, the test run doesn't show test steps however test steps are there for Manual runs in test result.
                                  And also the database doesn't have test steps for automated testrun Ids but its there for manual runs.
                                  I see that tbl_TestActionResult doesnt get populated for automated test run Id.
                                  If its there it will be easy for us to generate reports for the automated runs.

                                  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 →
                                  • Expan on WIX projects

                                    Look, I'm over the whole setup & deployment deployment project, but really think that the ISLE is such a bad replacement.

                                    Is it possible to may expand on say the WIX toolset, Perhaps make a nice simple wizard interface? It's one thing to build a nice simple windows app that takes me 2-3hrs, but then I'm spending the same amount of time typing out XML to build the msi for it.

                                    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…)
                                      3 comments  ·  Install  ·  Flag idea as inappropriate…  ·  Admin →
                                    • Allow applications to be renamed by no longer tieing the monitoring configuration to the application name

                                      As an Application Insights user I want to be able to rename my applications in Application Insights without having to reconfigure my monitoring.

                                      When using the Microsoft Monitoring Agent, the application name is either the Virtual Site/Virtual Application, or an override specified when configuring the MMA. If I want to rename my application, I would have to reconfigure MMA, and I would loose all existing telemetry.

                                      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  ·  Application Insights  ·  Flag idea as inappropriate…  ·  Admin →
                                      • Remove "using [namespace]", let the compiler find out as much as it can

                                        The "using [namespace]" keyword has no value for the developer, any code reviewer, or any human, except in a specific case where the class is found in more than one namespace, which does not happen much.

                                        This keyword is like plumbing code, it has nearly no value other than helping the compiler to work faster. With today caching techniques and fast cpu, it seems more a reliquat of the past rather than a real language feature.

                                        So i vote to remove it !!!!

                                        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  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                                        • add razor cshtml preview, like aspx preview

                                          aspx pages can be splitted so you get a preview of the rendering

                                          Why not cshtml pages ?

                                          The aspx preview is buggy, but it does not matter. The preview is a good way to see if something is wrong with code integration.

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

                                          Feedback and Knowledge Base