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. Allow MSBuild to clean and build solutions while open in visual studio

    On every project we run we use PowerShell to drive build and deployments into our local environments.

    We call MSBuild.exe from PowerShell but frequently get this error message: "CSC : error CS1606: Assembly signing failed; output may not be signed -- Error signing assembly -- The process cannot access the file because it is being used by another process."

    The only way to work around this issue is to close visual studio, run our build and deploy scripts and reopen visual studio after.

    Note: this is not a case that we are running MSBuild and trying to build or debug…

    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…)
      1 comment  ·  IDE  ·  Flag idea as inappropriate…  ·  Admin →
    • Allow Code Snippets that are part of a solution to be automatically added for use

      A user's snippet library can become quite an unruly place. Currently, the only way to add snippets that are not part of an extension or provided out of the box is to add them to your personal snippet library.

      At many organizations, you may be working in two or more solutions with many projects. It may be helpful to have code snippets defined--some of which only pertain to the current solution. However, the only recourse is to add them all to your personal snippet library.

      As a developer, I want to be able to add code snippets to a Visual…

      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 →
      • Provide TFS Build Source Indexing for Git

        Embedding version control paths or source indexing is available for TFVC builds. Please make this feature available for TFS Git builds.

        5 votes
        Vote
        Sign in
        Check!
        (thinking…)
        Reset
        or sign in with
        • facebook
        • google
          Password icon
          I agree to the terms of service
          Signed in as (Sign out)
          You have left! (?) (thinking…)
          0 comments  ·  Team Foundation Server  ·  Flag idea as inappropriate…  ·  Admin →
        • Show Constant Value Tooltips When Not Debugging

          While NOT debugging, it'd be great if we the tooltips for constants which show their type also actually showed the value of the constant.

          This value should be known due to incremental compilation and could be displayed just like it is while you're debugging.

          It's just really annoying to have to F12 all the time in a constant heavy environment and then jump back to the location after seeing what the value is.

          Thanks!

          23 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  ·  Debugger  ·  Flag idea as inappropriate…  ·  Admin →
          • Visual Studio should manage Version Numbers

            There should be an internal facility to manage project / module / assembly version numbers with options for autoincrement, set to a day of the year, etc., and it should have independent options for major, minor, build and revision numbers.

            59 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  ·  Release Management  ·  Flag idea as inappropriate…  ·  Admin →
            • Remote user action recording for exporatory testing using MTM

              we would like to record user actions perfomed on a remote system. For example: we have a window application running on a targer PC (Win8 Computer). we dont want to install MTM on the traget computer. Hence we have installed MTM on our desktop's.

              We have installed test controllers on our desktop (win7) and test agents on target computer (win8).

              It would be nice if we can start "exploratory session with options" on offline system (desktop) and select the target computer.

              Idea would be like, perform actions on target PC and when we say generate test case on desktop system…

              23 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  ·  Visual Studio Test and Lab Management  ·  Flag idea as inappropriate…  ·  Admin →
              • Support SQL FileStream and FileTable in Entity Framework

                Currently working with sql file tables is too difficult when working with EF6. I would like to create file table and filestream records directly in entity framework

                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…)
                  0 comments  ·  Database Projects  ·  Flag idea as inappropriate…  ·  Admin →
                • Please give us this operator already! ??=

                  /*
                  Microsoftclaus, for Christmas all I want is a lazy eval operator

                  Stay cool,

                  - Everyone
                  */

                  [ThreadStatic]
                  static StringBuilder __builder;

                  public static string Concatenate(params string[] strings)
                  {
                  #if NEW_OPERATOR

                  __builder ?? = new StringBuilder();

                  #endif

                  #if NO_NEW_OPERATOR

                  //this is clean but wastes an assignment in the not-null case!
                  __builder = __builder ?? new StringBuilder();

                  #endif

                  //todo: concatenate the strings
                  throw new NotImplementedException();
                  }

                  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  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                  • Implied backing field access on automatic properties with only get

                    An automatic property with only a get method is pointless. since there is no way to set the backing field (other than maybe through reflection). The usual way to solve this problem is to create a private setter, however I find this somewhat annoying in that it generates a set method, plus it generates access protection errors rather than setter doesn't exist errors when accessing it externally.

                    What I propose is that when an automatic property is declared as such:

                    <type> MyProperty { get; }

                    Then when that property is accessed within the private scope (ie, in the class itself)…

                    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…)
                      2 comments  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                    • Add OneDrive full access

                      write or read data from OneDrive is simple a roundabout way. you must call the onedrive api and get data. if the Connection lost you must Cache Data, allthrough Windows has one onedrive-folder inside. you must duplicate the data.
                      I wish a simple access to local folder of OneDrive of Windows to get and set data. Windows sync data autonomous. why should do this every programmer do?

                      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  ·  Windows 8 Apps  ·  Flag idea as inappropriate…  ·  Admin →
                      • Height of TextBox, MaskedTextBox and ComboBox controls

                        Could you change the properties of these controls for that we could change their height property without need change the size of fonts?
                        Sometimes, the things become complicated when we try to make a nice layout of components on the Form without these options.
                        For example, when we put a ComboBox control beside a TextBox control, they don't stay 100% aligned because their heights are differents. I still hope for this improvement since VB.NET 2005.
                        There are others options to solve this, but become a complicated work and not satisfactory.

                        Tankyou

                        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…)
                          1 comment  ·  Windows Forms  ·  Flag idea as inappropriate…  ·  Admin →
                        • Add WP8.1 (Silverlight) support for Application Insights

                          I integrated App Insights per the setup page for "Windows Store and Windows Phone projects" - this doesn't work for 8.1 Silverlight. It does some things to my project, adds some files, but the demo code for logging events/page views doesn't compile, and just running the app (as instructed) after setup logs nothing to App Insights.

                          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  ·  Application Insights  ·  Flag idea as inappropriate…  ·  Admin →
                          • Add a "??=" operator to C#

                            Add an operator that assigns the value of the right operand to the left operand when the left operand is null. For example:

                            string message = null;
                            message ??= "Hello, World!"; // sets 'message' to "Hello, World!" since 'message' was null.
                            message ??= "Goodbye, World!"; // leaves 'message' set to "Hello, World!" since 'message was not null.

                            The example above uses strings but would apply to any reference/nullable type.

                            Currently, the best alternative that we have for this in C# is:
                            message = message ?? "Hello, World!";

                            Thanks,
                            Blake

                            14 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 →
                            • DEVENV additional options

                              DEVENV command currently throws help window when invalid project error occurs.Seems a bug.Additional options to suppress such windows would be helpful.

                              3 votes
                              Vote
                              Sign in
                              Check!
                              (thinking…)
                              Reset
                              or sign in with
                              • facebook
                              • google
                                Password icon
                                I agree to the terms of service
                                Signed in as (Sign out)
                                You have left! (?) (thinking…)
                                1 comment  ·  Flag idea as inappropriate…  ·  Admin →
                              • Add support for .config transformation

                                The applicationInsights.config file should support .config transformations.

                                We want to use different logging based on the selected build profile so our different staging environments can have different type of logging.
                                Right now there is no easy way to use AI with "Publish" in VS.

                                This way, you can remove the profile part from the .config file and it will work the same way as the rest of VS .config files works.
                                No need to invent the wheel again.

                                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…)
                                  3 comments  ·  Application Insights  ·  Flag idea as inappropriate…  ·  Admin →
                                • One .NET Framework for One Microsoft

                                  Proposal is to create a “One Framework” project at Microsoft to encompass both technology development and a consistent message for customer engagement. A developer should be able to fire up Visual Studio and use C# and Xaml to target Windows Desktop, Windows Store Apps, and Xbox One along with a cloud deployed “click once” option to all these targets. There should be clear guidance that all of these will be both supported and enhanced for a long time to come. It would be a nice extra to have a fully supported by Microsoft targeting of C# to Android and IOS…

                                  1,860 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…)
                                    25 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                                  • Put release templates under version control

                                    The release templates should be put under version control, as with the build templates, I want to know what has changed, when and by who. And also know that I can work on the template and undo changes I don't like.

                                    36 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  ·  Release Management  ·  Flag idea as inappropriate…  ·  Admin →
                                    • Simplify the recommended disposition pattern

                                      Since the introduction of SafeHandle, declaration of a finalizer in a non-handle class should be exceedingly rare. However, the recommended disposition pattern (as documented at http://msdn.microsoft.com/en-us/library/fs2xkftw.aspx and as verified by static analysis rule CA1063) "caters" to finalization by declaring the virtual Dispose(bool disposing) method.

                                      In order to simplify the work of implementers, please consider adjusting the recommended disposition pattern for the overwhelmingly common non-finalizable case to include only a single Dispose() method, as opposed to both the Dispose() and Dispose(bool disposing) methods. (See http://msmvps.com/blogs/calinoiu/archive/2010/02/03/what-s-wrong-with-the-net-design-guidelines-dispose-bool-disposing.aspx and http://msmvps.com/blogs/peterritchie/archive/2013/01/20/the-dispose-pattern-as-an-anti-pattern.aspx for additional details.)

                                      In case this is a concern, please note that this would…

                                      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  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                                      • Please provide WinRT Async UnitTestLibrary for C++ metro apps.

                                        When it comes unit testing metro apps, especially ones written in C++, it really becomes difficult without having any library for WinRT async methods.

                                        Looks like previously there was one with VS2012, but that doesn't work on VS2013.

                                        Doing anything asynchronously is literally becoming impossible for there is no point in calling my assert there.It will be really helpful if we have this library supported for VS2013 and if something new comes up to support unit testing WinRT async methods in C++.

                                        The only current solution out there is to use the helper methods provided in HILO sample .

                                        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…)
                                          2 comments  ·  Windows 8 Apps  ·  Flag idea as inappropriate…  ·  Admin →
                                        • Allow readonly variables to be set to null in the Dispose method.

                                          It is recommended that references to large objects be set to null during disposition. However, if such a variable has the readonly modifier it cannot be set to null. The compiler is clever enough to work out that it is allowed to be assigned to in the constructor, it should therefore be able to allow it to be set to null (and only null) in the Dispose method of a class that implements IDisposable.

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

                                          Feedback and Knowledge Base