Visual Studio 2015

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, you can visit our Developer Community website to get started. 

For suggestions for improvements to other developer products, see these sites:

To review the current UserVoice statuses and their definitions, please review our “What Does the Status of My Feedback Mean?” article.

We look forward to hearing from you!

- The 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 support and comment on it.

If it doesn't exist, you can post your idea so others can support it.

Enter your idea and we'll search to see if someone has already suggested it.

  • Hot ideas
  • Top ideas
  • New ideas
  • My feedback
  1. 'Restart Debug' test to be present in the place as marked in the snapshot

    'Restart Debug' test to be present in the place as marked in the snapshot

    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  ·  IDE and Editor  ·  Flag idea as inappropriate…  ·  Admin →
    • Provide an option to unload all projects in the solution

      Working with large solutions in Visual Studio is a pain. For instance, Chromium has a few thousands of projects, all that huge tree of projects consumes lots of memory, and the IDE is constantly indexing/scanning/updating IntelliSense.

      Unloading all these projects makes things much better.

      There is a context menu item that unloads all projects within a solution folder. That is fine, but the aforementioned Chromium has dozens of folders.

      It would be great to have an "Unload all projects" option in the context menu for the solution node.

      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  ·  User Interface  ·  Flag idea as inappropriate…  ·  Admin →
      • Sync class view with code

        Would be helpful if there was a button in the Class View window that could be used to auto-synchronize it with whatever class/method is being viewed in the editor.

        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  ·  IDE and Editor  ·  Flag idea as inappropriate…  ·  Admin →
        • Update TFS 2015 so that at new team project set up and new team set up, that the default area path be set to “sub-areas included”!

          Please update on premise TFS 2015 so that at new team project set up and new team set up, that the default area path be set to “sub-areas included” as it was before TFS 2015. This has caused significant rework for us after we discovered that the default is now set to "sub-areas not included". It was explained to me by Eric Parvin in MS Support, that "the default setting has changed in VSTS (online version) back to "Sub-Areas Included" by default." This is evidence that enough feedback was provided that the "sub-areas not included" default was a poor choice.…

          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  ·  Debugging and Diagnostics  ·  Flag idea as inappropriate…  ·  Admin →
          • 1 vote
            Vote
            Sign in
            Check!
            (thinking…)
            Reset
            or sign in with
            • facebook
            • google
              Password icon
              I agree to the terms of service
              Signed in as (Sign out)
              You have left! (?) (thinking…)
              0 comments  ·  User Interface  ·  Flag idea as inappropriate…  ·  Admin →
            • 1 vote
              Vote
              Sign in
              Check!
              (thinking…)
              Reset
              or sign in with
              • facebook
              • google
                Password icon
                I agree to the terms of service
                Signed in as (Sign out)
                You have left! (?) (thinking…)
                0 comments  ·  Performance  ·  Flag idea as inappropriate…  ·  Admin →
              • Implement statement expression GCC extension

                In C and C++, please implement statement expression GCC extension.

                A compound statement enclosed in parentheses may appear as an expression in GNU C. This allows you to use loops, switches, and local variables within an expression.

                The last thing in the compound statement should be an expression followed by a semicolon; the value of this subexpression serves as the value of the entire construct. (If you use some other kind of statement last within the braces, the construct has type void, and thus effectively no value.)

                https://gcc.gnu.org/onlinedocs/gcc/Statement-Exprs.html

                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  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                • MFC: Please add method FindItemData in CComboBox

                  Case: I need a select an item in combo where associated data equals some value.
                  Now I need to write a code like:
                  int index = [this]()
                  {
                  int itemData = ...;
                  for (int i = 0; i < m_box.GetCount(); ++i)
                  {
                  if (m_box.GetItemData(i) == itemData)
                  return i;
                  }
                  return 0;
                  }();

                  m_box.SetCurSel(index);

                  Compare with Qt way:
                  m_box->setCurrentIndex(m_box->findData(itemData);

                  This suggestion is clone of https://visualstudio.uservoice.com/forums/121579-visual-studio-2015/suggestions/6778287-mfc-please-add-method-finditemdata-in-ccombobox

                  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 →
                  • Keep the debug session running even when not appliable changes were made. Show the original/edited sources somehow.

                    It is annoying that when I made some changes which are not appliable to current debug session and want to continue with debug it is not possible - I should either revert may changes or restart the debug.

                    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  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                    • Exceptions within async partial void method() cause the app domain to crash

                      C# allows you to write code as follows...

                      public partial class MyCodeGeneratedClass
                      {
                      public async Task MyCodeGeneratedMethod()
                      {
                      HttpClient client = new HttpClient();
                      Console.WriteLine(await client.GetStringAsync("http://msdn.microsoft.com"));
                      MyCustomCode();
                      }

                      partial void MyCustomCode();
                      }

                      partial class MyCodeGeneratedClass
                      {
                      async partial void MyCustomCode()
                      {
                      HttpClient client = new HttpClient();
                      Console.WriteLine(await client.GetStringAsync("http://msdn.microsoft.com"));
                      throw new Exception("Boom");
                      }
                      }

                      Calling MyCodeGeneratedMethod in a console application, brought down the app domain.

                      In the case of partial methods the return type must be void and you cannot have ref or out parameters. With the proliferation of async methods in libraries, this limitation is now much…

                      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  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                      • Fix error SQL71610 because SQL 2016 supports temporal tables with computed / calculated columns

                        This table definition is permitted in SQL Server 2016 but SSDT 14.0.60812.0 for VS 2015 gives a database project error SQL71610 (System-versioned temporal tables with computed columns are not supported.)

                        CREATE TABLE [dbo].[MyTable]
                        (
                        [_ValidFrom] [DATETIME2](2) GENERATED ALWAYS AS ROW START HIDDEN NOT NULL,
                        [_ValidTo] [DATETIME2](2) GENERATED ALWAYS AS ROW END HIDDEN NOT NULL,
                        PERIOD FOR SYSTEM_TIME ([_ValidFrom], [_ValidTo]),

                        [A] VARCHAR(255) NOT NULL,
                        [B] VARCHAR(16) NULL,
                        [C] As (A + Coalesce('\' + Nullif([B], ''), '')) PERSISTED,

                        CONSTRAINT PK_MyTable PRIMARY KEY ([C])
                        ) WITH (SYSTEM_VERSIONING = ON (HISTORY_TABLE = [dbo].[MyTable_History], DATA_CONSISTENCY_CHECK = ON));

                        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  ·  SQL Server Data Tools  ·  Flag idea as inappropriate…  ·  Admin →
                        • #pragma comment(lib for delay loading of dlls

                          I need to us a DLL that controls a hardware device, if the device isn't connected the DLL brings down the program with it. The DLL executes this code on attachment.

                          This problems can be solved by dynamically loading the DLL.

                          MSVC supports delay loading DLLs via `/delayload:toxic_sdk.dll`

                          To avoid extensive build targets, I use pragmas to control the included libraries, sadly there isn't a similar mechanism for loading DLLs.

                          Can we have something like?
                          #pragma comment(lib_dyn, "toxic_sdk.lib")

                          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 →
                          • Provide a facility to flatten HTML tags

                            Some developers like to format individual tags on multiple lines while other like to see the contents of a tag on one line (I'm in the latter camp). There is no convenient way to reformat a page to flatten or concatenate a tag into a single line and editing by hand is time consuming and painful. In an manner such as Ctrl-K-D and Ctrl-K-F, I'd like to have and key sequence that instructs the editor to reformat the page or selection and flatten the tags, maybe Ctrl-K-T.

                            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  ·  IDE and Editor  ·  Flag idea as inappropriate…  ·  Admin →
                            • Add another checkbox in exception Catch-On-Throw dialog for disabling the exception type for the current debugging session

                              I often want to temporarily disable an exception from catching on throw because its too spamy for what I'm currently debugging but remembering to go turn it back on for the next session rarely happens. I'd love a second check box to disable the catch on throw for that exception type for just the current debugging session.

                              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  ·  Debugging and Diagnostics  ·  Flag idea as inappropriate…  ·  Admin →
                              • Display an error when using a self-closing select or textarea

                                A few times when working on a CSHTML file, I entered a self-closing textarea or select element like this:

                                <textarea asp-for="Budgeting" class="form-control"/>

                                This is not valid because it should be this instead:

                                <textarea asp-for="Budgeting" class="form-control"></textarea>

                                However when I used the incorrect syntax above, I got no error or warning, and when the page was generated it did weird things to the HTML that was generated. It took some time to trace the source of the problem. If I got an error regarding this, it would have save a lot of time.

                                1 vote
                                Vote
                                Sign in
                                Check!
                                (thinking…)
                                Reset
                                or sign in with
                                • facebook
                                • google
                                  Password icon
                                  I agree to the terms of service
                                  Signed in as (Sign out)
                                  You have left! (?) (thinking…)
                                  0 comments  ·  IDE and Editor  ·  Flag idea as inappropriate…  ·  Admin →
                                • TFS 2015 Show "big" build step log in browser without download the build logs

                                  If I build Unity3d project? I have very big log.
                                  And I see this message:
                                  "The log is too big to be displayed in the browser. You can download the build logs and view them offline."

                                  Сould still show this log?
                                  May be with pagination.

                                  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  ·  Mobile App Development  ·  Flag idea as inappropriate…  ·  Admin →
                                  • Add the ability to hide C# regions altogether

                                    While regions are a language feature, we can appease those like myself who prefer not to use them by allowing us to render them completely invisible in our IDE instance.

                                    There would be *no* change to the underlying code; it would be like rendering that line number with a zero point font.

                                    There would have to be some consideration about line numbering and possibly a small hashmark in the sidebar (the skipped number and/or hashmark indicate the region is there.

                                    To address those who may say it's "dangerous" (e.g. the person not noticing the region and moving code outside the…

                                    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  ·  IDE and Editor  ·  Flag idea as inappropriate…  ·  Admin →
                                    • Provide revisions concept to Code Reviews

                                      When working on a large project it is extremely common to receive multiple comments that result in changes to the original implementation. It would be nice to be able to implement the changes and submit the new code review as a revision of the original. That way a full history of the evolution of the project is maintained, instead of just creating a totally separate review after making the suggested changes.

                                      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  ·  User Interface  ·  Flag idea as inappropriate…  ·  Admin →
                                      • Support deployment contributors when comparing databases

                                        I wanted to script the database parameters (such as database level permissions). This unfortunately tried to script dropping user permissions (specifically GRANT CONNECT), while I only wanted to script role permissions.

                                        Using AgileSqlClub's SqlPackage Deployment Filter I was able to configure deploy/publish to ignore these permissions.

                                        However, the comparison still shows and tries to drop them. I can exclude them manually but this causes issues:
                                        * Noise when viewing the comparison.
                                        * If the comparison decides a dependent element has also changed, the comparison won't let you ignore the dependant.
                                        * If the filter is changed to now include these…

                                        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  ·  SQL Server Data Tools  ·  Flag idea as inappropriate…  ·  Admin →
                                        • property sheet location

                                          In the property manager it is not possible to find out who or which file is importing a certain property sheet.
                                          You see that the property sheet is imported but not where exactly. This makes it very hard to find out.

                                          My suggestion would be that there is a context menu to jump to the file or a property which shows where the sheet is imported.

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

                                          Feedback and Knowledge Base