[Closed] WCF Data Services Feature Suggestions

This web site is planned to be retired in July 31, 2019. This web site is no longer being monitored by the Microsoft OData team. Visit http://odata.github.io/odata.net/ for current information on the Microsoft OData Stack for .NET and where to submit feedback.

Welcome to the WCF Data Services feature suggestion list. Find out more information about Data Services at our MSDN page.

If you have questions, need help or find a bug in Data Services, visit our forums.

How can we improve WCF Data Services?

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.

  1. DataServiceContext access to WebRequest.CookieContainer

    Allow setting of CookieContainer to DataServiceContext working in ClientHttpStack

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  2. 1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  3. 1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  4. Customization of oData feed for service operations

    Currently if you create a service operation you have no way to customize the oData fields such as title, author, rights etc. If your business is to sell/license access to data or processing it's a business requirement to be able to brand the data you return. At the moment users who view generated data see blank author fields and inexpressive title fields.

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  5. let me save expensive intermediate LINQ results in temp table

    LINQ-to-Entities should offer an anaogous operator to AsEnumerable() but instead of materializing results on the client, it would materiailze results on the server (e.g. a temp table for SQL Server), allowing subsequent operators to re-use intermediate results without risking additional server recomputation or requiring a round-trip from client to server.

    The underlying requirement is to make it easier to build and maintain performant LINQ queries that use millions of rows, many complex joins, I/O intensive calculations like running totals or self-joins, or all of the above.

    For these kinds of queries in T-SQL, a good way to get predictable performance…

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Flag idea as inappropriate…  ·  Admin →
  6. Allow configuration of underlying WCF bindings, Transports, etc

    I would love to be able to fully customise the transports and bindings of my Data Service. Particularly, I want to be able to use netTcpBinding but get a runtime exception when I do so. WCF data services should be able to be used by internal applications (where speed may be paramount), not just public (HTTP-only) web services.

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  7. Entity Tracker in WCF Data Services

    The most difficult task is tracking changes to entity or collection.
    INotifyPropertyChanging - minimin needed interface support to implement Undo\Redo functional

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  8. 1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  9. 1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  10. Add Extension to Control the Behavior,

    Add Extension to Control the Behavior,So that I dont need to go to WCFWebHttp Pipeline

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  11. Allow client side partial class properties that don't automatically get serialized and sent to the server.

    This is equivalent to the common technique going around that uses the [DoNotSerialize] attribute and strips the offending properties out in the WritingEntity event.

    see http://social.msdn.microsoft.com/Forums/en-US/adodotnetdataservices/thread/f13f4fd7-df0e-45b1-98ec-640f385160dc/

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  12. Provide more control in the EDM for electing which field to use as an entity key

    On many occasions I have had to use natural keys in my EDM to enable friendly URI format to reference an entity. Some times this is limiting. I method of annotating the EDM to provide a natural key for an entity would be really useful

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  13. 1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  14. 1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  15. Configuration management

    Data service configuration currently happens only in code on initializing the service. Config support that follows WCF configuration would be good.

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  16. Multiple namespaces per service

    Currently, when using the Entity Framework Provider (both for EF5 and EF6), all the types of all DbSet properties of the container/context class are placed in the same CSDL schema in the EDMX metadata of the OData service.

    Since a CSDL schema necessarily exports elements to a single CSDL namespace, this means all the elements will be put in the same CSDL namespace (defined as the .NET/CLR namespace of the container/context class).

    The problem is that the name of these elements may be derived from .NET/CLR symbols (e.g. EntityType elements use .NET/CLR type/class names) which could be defined in different…

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  17. AddQueryOption Method has a DataServiceVersion problem

    DataServiceQuery<TElement>.AddQueryOption Method
    http://msdn.microsoft.com/en-us/library/Cc646860(v=vs.103).aspx

    When I call:
    var ordersQuery = context.Orders.AddQueryOption("$filter", "Order_Details/any(od:od/UnitPrice gt 80M)").Include(o => o.Order_Details);
    I get a DataServiceClientException:
    The DataServiceVersion '1.0' is too low for the request. The lowest supported version is '3.0'.

    But this works correctly:
    var ordersQuery = context.Orders.Where(o => o.Order_Details.Any(od => od.UnitPrice > 80)).Include(o => o.Order_Details);

    The any operator is new in OData V3. I use Microsoft.Data.Services 5.5.0.0.

    I found this workaround, but for me this is not a solution because my filter condition must be dynamic:
    http://social.msdn.microsoft.com/Forums/en-US/b39ac5c8-a41d-41b6-b8cb-159e84790d32/filling-dataservicecollection-with-sends-dataserviceversion-of-10

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  18. Remove dependency from the server to the client

    Currently, the Microsoft.Data.Services NuGet package depends on Microsoft.Data.Services.Client. This makes little sense.

    And indeed, it doesn't seem to be a package misconfiguration, some types normally needed in a server environment are only available in the client assembly; such as DataServiceProtocolVersion.

    This type, and probably the others (if any) are already correctly defined in a common namespace (System.Data.Services.Common). I suggest creating a new assembly of the same name as well as a NuGet package, again with the same name, and making both the client and the server depend on it.

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  19. Support asynchronous operations (CRUD, Actions, Interceptors)

    Currently, the main threads block completely on I/O and it's impossible to let the framework reclaim them to process other requests when using other threads for heavy computations[1] (though I guess I/O generated by the providers to the backends are the most common culprits here).

    This typically affects requests/sec rates as soon as a couple of requests require a longer time to complete.

    Some providers already make async interfaces available, including the Entity Framework (since v6[2][3]), the main provider for WCF Data Services.

    It would be great to be able to take advantage of those.

    [1] https://social.msdn.microsoft.com/Forums/en-US/fa7b1179-286c-462e-a754-cbec778e836d/wcf-data-services-asynchronous-request-processing?forum=adodotnetdataservices
    [2] http://msdn.microsoft.com/en-us/data/jj819165.aspx
    [3] …

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  20. 1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →

[Closed] WCF Data Services Feature Suggestions

Feedback and Knowledge Base