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: https://connect.microsoft.com/visualstudio.

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

We would also like to invite you to check out the Announcements section we have added to this site, where we will be posting special opportunities for you to participate in.

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. Please keep the Reference Source symbol server updated

    The Reference Source is a very useful feature, particularly so for its ability to step through framework code. But that feature never lasts very long after a release. Many programmers have .NET 4.5.2 on their machine today, the server doesn't supply the necessary PDBs. Downgrading to 4.5.1 is painful and often not possible at all.

    Please keep the server updated.

    69 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  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
    • Add ToQueue<T> and ToHashSet<T> extension methods on IEnumerable<T>

      IEnumerable<T> has the ToList<T> extension method, and it would be very useful to have equivalent ToQueue<T> and ToHashSet<T> methods. Although Queue<T> and HashSet<T> have constructors that take an IEnumerable<T>, they cannot be used when T is an anonymous type. For example this is an error:

      var q = new Queue(Enumerable.Range(1, 3).Select(i => new { Prop = 7 }));

      But the equivalent using ToQueue works fine. It is fairly easy to define your own extension methods along the lines of:

      public static HashSet<T> ToHashSet<T>(this IEnumerable<T> collection)
      {
      return new HashSet<T>(collection);
      }

      But the use case is very common, so they seem…

      69 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 →
      • Make loading satellite assemblies signed with no key or a different key optional

        At present the CLR only loads satellite assemblies if they are signed with the same key as the fallback assembly to which they refer. This means that the only people that can add new cultures to an existing assembly are the original authors. This includes the .NET Framework itself, ASP.NET MVC, Silverlight and every signed assembly released by Microsoft (or indeed anyone else).

        The .NET Framework 4 is currently available in 23 languages (plus English). ASP.NET MVC 3 is currently available in 9 languages. If the language you want isn't on this list then there is nothing you can do…

        67 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 a IFormattable to the boolean type

          It would be handy if I could provide a custom format when writing out boolean values.

          I propose this would look like this: "{0:String_If_True:String_If_False}".

          An example in C# would look like this:

          bool result = SomeBoolReturningFunction();
          Console.WriteLine("Result: {0:Success:Fail}", result);

          Same example in VB:

          Dim result as boolean = SomeBoolReturningFunction()
          Console.WriteLine("Result: {0:Success:Fail}", result)

          61 votes
          Vote
          Sign in
          Check!
          (thinking…)
          Reset
          or sign in with
          • facebook
          • google
            Password icon
            I agree to the terms of service
            Signed in as (Sign out)
            You have left! (?) (thinking…)
            under review  ·  4 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
          • Support System.IO APIs for SkyDrive's Smart Files

            Filed on behalf of our customers.

            As described in this blog post [1], SkyDrive has a notion of smart files [2] which aren't directly accessible using the regular System.IO APIs, such as File.Open. We provided sample code [3] that shows how one can write code that handle smart files correctly.

            But to quote our customer:

            It would be helpful for Microsoft to provide a full blown solution to this which maps all key methods in System.IO such as File.Copy, File.Move etc. to their WinRT API equivalents. This issue is starting to crop up on support forums as it has caught…

            61 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 →
            • Create pdf viewer component for wpf/sl/winrt

              Dear sirs.
              Please create pdf viewer component for wpf/sl/winrt in .net 4.5

              56 votes
              Vote
              Sign in
              Check!
              (thinking…)
              Reset
              or sign in with
              • facebook
              • google
                Password icon
                I agree to the terms of service
                Signed in as (Sign out)
                You have left! (?) (thinking…)
                2 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
              • Make System.Net.Http referenced by default in new .NET 4.5 projects

                Open Visual Studio 2013 and create a new console project or class library. By default, the project will reference System.Data, System.Data.DataSetExtensions, but not System.Net.Http.

                This makes no sense.

                How is it more likely that I will be working with DataSets than making HTTP requests? This is 2014, not 2004.

                Please update the project templates to reflect the needs of programmers today.

                55 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  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                • Update WPF to V5 by 2014

                  Can we get an update as what work is getting done on the next release of WPF from 4.5 which was released last August.

                  Want to know if I should maintain my xaml skillset or get rid of it for HTML5 and etc....

                  53 votes
                  Vote
                  Sign in
                  Check!
                  (thinking…)
                  Reset
                  or sign in with
                  • facebook
                  • google
                    Password icon
                    I agree to the terms of service
                    Signed in as (Sign out)
                    You have left! (?) (thinking…)
                    2 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                  • SmtpClient should allow a null MAIL FROM in the SMTP envelope

                    Currently, the behavior of the built-in SmtpClient is to set the SMTP envelope's MAIL FROM as follows:

                    - Use the MailMessage.Sender property if it is not null; otherwise
                    - Use the MailMessage.From property

                    When a .NET application wants to send an auto-response e-mail (such as a "Support Ticket Created" or a "Message Accepted") e-mail, it would be nice to be able to send a null envelope from ("MAIL FROM: <>"). This translates to a "Return-Path: <>" stamp and is the SMTP-sanctioned way to say "I don't want to start an auto-responder war; don't send any bounces back to me."

                    But…

                    49 votes
                    Vote
                    Sign in
                    Check!
                    (thinking…)
                    Reset
                    or sign in with
                    • facebook
                    • google
                      Password icon
                      I agree to the terms of service
                      Signed in as (Sign out)
                      You have left! (?) (thinking…)
                      1 comment  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                    • Create [WarningAttribute] that triggers compiler warnings/errors the way [ObsoleteAttribute] does.

                      Add a [WarningAttribute] that works the same way as [ObsoleteAttribute]; it would trigger a compiler warning or error with a customized message. Ideally it would not be sealed. You could do things like:

                      [Warning("This class uses PInvoke and will prevent ARM compatibility.")]

                      [Experimental("This method has not completed Quality Assurance, and should not be used in a production environment.")]
                      This feature would be particularly useful for component creators.

                      This would be the bees' knees.

                      48 votes
                      Vote
                      Sign in
                      Check!
                      (thinking…)
                      Reset
                      or sign in with
                      • facebook
                      • google
                        Password icon
                        I agree to the terms of service
                        Signed in as (Sign out)
                        You have left! (?) (thinking…)
                        0 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                      • Allow ExcludeFromCodeCoverageAttribute to be used on assembly level

                        It is great that code coverage analysis can be easily run from test explorer window in VS 2012. But I suppose that it is often not appropriate to analyze code in test assembly itself. I think that it well be appropriate to exclude test assemblies from code coverage totally by using ExcludeFromCodeCoverageAttribute on assembly level in those assemblies so they will not produce 'garbage' code coverage results.

                        Now it is not possible since ExcludeFromCodeCoverageAttribute cannot be used at assembly level. There are several possible targets for this attribute however, allowing for some flexibility. I think, it will be convenient to…

                        46 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  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                        • Support ICollectionView in Portable Class Library target

                          Apart from supporting the ICollectionView there needs to be some way of creating a collection view in code for MVVM scenarios.

                          I guess the approach wich requires the least amount of work from you is to make the PagedCollectionView availible in .NET 4.5 and Metro (if it is not already availible) applications.

                          46 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 →
                          • Modify CultureData to support PersianCalendar

                            Currently, the windows OS does not return the correct Calendar for "fa-IR" culture, so anytime you create a new CultureInfo instance you end up with a wrong calendar!
                            I couldn't help but notice in the .net reference source there's also a similar issue with the "zh-TW" culture which you have managed to fix when you make reference to CalendarIds property, as you can see here:
                            http://referencesource.microsoft.com/#mscorlib/system/globalization/culturedata.cs,93714edd02838809

                            As mentioned above there's a line of code in culturedata.cs class which fixes ""zh-TW"" culture with Calendar.CAL_TAIWAN
                            I suggest you do the same with PersianCalendar (which is a built-in type within .net framework)
                            I…

                            46 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 →
                            • Additional overload to System.Concurrent.ConcurrentDictionary GetOrAdd

                              As it stands, the ConcurrentDictionary has a GetOrAdd method that accepts a valueFactory delegate that is not included within the scope of the lock, hence it can be executed multiple times and as a result adding the value to the dictionary and executing the valueFactory is not an atomic operation. This behaviour seems to be misleading in relation to what the API leads one would assume that the benifit of having a method accepting a function overload would be. Let's see an example:

                              For example, the intention of the following code is clear:
                              Object value = ValueFactory(); myConcurrentDictionary.GetOrAdd(key, value)

                              From…

                              45 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…)
                                4 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                              • NGEN should support explicit path based assembly load

                                Please add NGEN support for Assembly.LoadFile and Assembly.LoadFrom. For more context see the blog post http://blog.bonggeek.com/2013/12/net-ngen-explicit-loads-and-load.html

                                Today NGEN images (or native image probing) is supported only in the default load context. That means any mechanism used to load assemblies from an path, e.g. using Assembly.LoadFile do not get NGEN support. For Assembly.LoadFrom it's even weirder, it sometimes work and not on other times. This makes hard to build performant large scale applications that uses loosely coupled plugins that are loaded dynamically

                                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  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                                • Reduce JIT time with by packaging profiles for non-win8 Store apps

                                  It is great that I can package my profiles using System.Runtime.ProfileOptimization for Win8 Store Apps (http://support.microsoft.com/kb/2715214). However we need to do it for NON-Win8 Store apps.

                                  42 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 →
                                  • Adopt dependency injetion patterns in core fx classes

                                    Many "core" framework classes (File, ConfigurationManager, ResourceManager, etc) rely on static members to provide their functionalities, making them very hard to mock without the use of isolation framework (such as Moles or TypeMock, which add their own functionality).

                                    If the framework just offered interfaces for such classes, injecting them as dependencies would be an easy task and avoid a lot of the hassle with those isolation tools.

                                    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  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                                    • Objective-C compiler support in Visual Studio .NET

                                      I am a computer science student and want to try out Objective-C. It isn't always possible to get an Apple Mac to do all the objective-C programming that I am learning. Most of the time I can't get hold of my friend who has a Macintosh as he stays busy. I would like to suggest the idea of including and supporting the objectivc-c compiler in the future releases of Visual Studio .NET if possible. I understand that it is very time consuming job to get the objective-c compiler ready for a windows computer but still I keep the hope of…

                                      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  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                                      • Multiplatform Framework

                                        We are really bored to write applications only for Windows. You should publish .NET Framework for other platforms. Mono project is not enugh. We need offical .NET Framework package for Linux Distros and OS X. And "build once, run everywhere" option would be good. Like Java's JAR packages...

                                        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…)
                                          2 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                                        • Please implement ReaderWriterLockSlim on the .Net Compact Framework

                                          Please implement ReaderWriterLockSlim on the .Net Compact Framework

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

                                          Feedback and Knowledge Base