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
-
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...
19 votes -
SQL Compact 4 work with for Linq to SQL
Have SQL Compact 4 work with for with Linq to SQL without having to do hack your way to make it work
19 votes -
implement INotifyCollectionChanged on System.Data.Linq.EntitySet<T>
Because EntitySet<T> doesnt implement INotifyCollectionChanged, LINQ-to-SQL is unable to notify WPF of any additions/removals. The results are that binding any data returned from LINQ-to-SQL cannot have any children added or removed visually.
19 votes -
Dynamic execution of code in the space program for scripting
in. net 4 can compile code at runtime and loading it into the AppDomain. It seems to me that you want to extend this useful functionality and allow execution of arbitrary code from the right during the execution of the program, and in the same namespace, or in the same AppDomain, and have access to all connected to the library project. For example I need to calculate the data according to the formula, but formula can vary depending on the legislation, or other causes. And it would be nice to be able to execute code from a string. Then they…
18 votes -
Next-gen GC performance, NEW AGE of Allocations Speed
When i tested GC performance (C# "new" allocation speed of arrays and objects) of .NET 4.0 i found at least 1 huge perforamnce issues.
To significantly improve C# allocation speed and whole .NET programm performance, especially in games, i suggest to make the following:
1) DO NOT "ZERO" memory synchronously before allocation (like .NET 4.0 does). Next-Gen is to Zero memory ASYNCRONOUSLY (in other thread) and right AFTER old object release, NOT before new allocation. This will BOOST memory allocation speed to the heavens. In short words all memory must be zeroed beforehand.
2) [less important for now] Make private…
18 votes -
support OData Client in Portable Class Library
WCF Data Services & OData supposed to be a universal way to access data.
Why should I have to implement this application layer in each client technology I create μυ application, and not in a portable library?
18 votes -
Finish a less naive implementation of System.Net.WebClient
This initially appears to be a high-level object, but blocks access to high-level HttpWebRequest properties like CookieContainer, IfModifiedSince, AllowAutoRedirect, UserAgent, Referer, ContentType and Encoding; and high-level HttpWebResponse properties like LastModified, ContentType and Encoding. Instead, you have to add or retrieve these headers as strings, manually providing or consuming any dates in the obscure HTTP header format, and parsing the Encoding from the Content-Type.
Without cookies, WebClient isn't well-suited to most tasks requiring multiple requests. Without the other headers mentioned, it is also not well-suited to nontrivial requests.
WebClient also doesn't provide static methods for simple requests, but instead requires management…
17 votes -
Create a .NET managed wrapper for the Text Services Framework
Create a .NET managed wrapper for the Text Services Framework
17 votes -
Bring ProgressRing and ProgressIndicator to WPF.
Since ProgressIndicator is just a style template for ProgressBar, there is no reason it shouldn't be accessible in WPF. However I relies on some new animation classes that are only available for WinRT. I would like the new metro controls available to WPF.
So we can build Zune like Metro desktop UIs.
17 votes -
Make a constructor in System.String that accepts IEnumerable<char> instead of char[]
The only way to initialize a string from an IEnumerable<char>, is by converting it to array. This is very verbose, especially when working with Linq.
For example:
string GetNumbers(string value)
{
return new string(value.Where(c => Char.IsDigit(c)).ToArray());
}There should be a less-verbose way to do it.
Either (rename Join with whatever you think matches best for the context):string GetNumbers(string value)
{
return value.Where(c => char.IsDigit(c)).Join();
}Or at least:
string GetNumbers(string value)
{
//string const accepts IEnumerable<char>
return new string(value.Where(c => Char.IsDigit(c)));
}17 votes -
Add a WebSockets library
I hereby propose a WebSockets library for the .NET framework, which must be included in all future releases of the .NET from version 4.0 upwards.
A library providing native support for WebSockets, both server and client applications, must be considered an essential requirement for the next major version of the .NET framework.
WebSockets provide functionality that is absolutely integral to the future of web applications. The latest version of every major web browser supports WebSockets. Every major browser vendor is adopting the WebSockets API along with the HTML5 specification.
This type of architecture is already extremely popular and widely used,…
17 votes -
Native support for XPath 2.0 or XSLT 2.0 in .NET
Provide native support for XPath 2.0 or XSLT 2.0 in .NET framework, and of course extend it to SharePoint and other related technologies
16 votes -
Resolve Airspace iusse to full integrate OpenGL inside WPF
There are many programmers and company that develop applications based on geometrical kernels that use OpenGL for drawing (like CAD/CAM applications) often they have an old MFC application, and to pass to a modern view for their applications and give a new user experience for the user they could make new WPF interfaces very quickly but they can't rewrite an entire kernel to pass from OpenGL to DirectX, so often they prefer to remain with MFC without pass to WPF. This could be a very special thing to have the possibility to use OpenGL fully supported by WPF, without airspace…
16 votes -
LOH compaction
It is an absolute disgrace that LOH compaction is not included in the CLR (GC). Please make every effort to include this feature in future versions
15 votes -
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…
15 votes -
15 votes
-
Create a method called System.IO.Path.IsValidPath
The System.IO.Path class has GetInvalidFileNameChars and GetInvalidPathChars which I guess are mostly used for validating paths. However simply using these does not garentee a valid path. As such I propose createing an System.IO.Path.IsValidPath(string) method that would return true if the path is valid and false if not.
15 votes -
Auto-expand functions as expression tree in LINQ-expression
Example:
class Employee
{
public string FullName
{
get { return FirstName + " " + LastName; }
}public string LastName { get; set; }
public string FirstName { get; set; }
}Query like this
var employees = (from employee in db.Employees
where employee.FullName == "Test User"
select employee).ToList()Can be compiled as
var employees = (from employee in db.Employees
where (employee.FirstName + " " + employee.LastName) == "Test User"
select employee).ToList();14 votes -
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…
14 votes -
Please create a DGML visualizer control that can be incorporated into applications at runtime.
It would be very nice to have a control for displaying DGML graphs at runtime for my application. I think it would make a greate UI element.
14 votes
- Don't see your idea?