[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. 436 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    6 comments  ·  Flag idea as inappropriate…  ·  Admin →
  2. 330 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    4 comments  ·  Flag idea as inappropriate…  ·  Admin →
  3. Allow me to expose entities from multiple sources

    A lot of the data for my OData serivce comes from my database, but I also have a need to have some of the entities in my service come from another data source (example: an existing web service)

    313 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    7 comments  ·  Flag idea as inappropriate…  ·  Admin →
    completed  ·  Mark Stafford responded

    This became possible at some point in the past. One could argue that it was always possible with a custom provider, but it’s even more possible now with a variety of combinations allowed. The recent work on public providers has enabled even more scenarios here. I think we can effectively call this issue completed.

  4. 252 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    9 comments  ·  Flag idea as inappropriate…  ·  Admin →
    completed  ·  Mark Stafford responded

    With the recent public transport layer work, this is now possible as of 5.6.0.

  5. 228 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    10 comments  ·  Flag idea as inappropriate…  ·  Admin →
    completed  ·  Mark Stafford responded

    We still don’t provide this feature out of the box, however, several advancements in OData and our client allow you to do this. For instance, you could take advantage of the reading/writing pipelines to handle these modifications, and use PATCH (rather than PUT) for update to achieve the ask here.

  6. Support Additional SQL Types

    Add built-in support for additional SQL types including DateTimeOffset, Geography, etc

    188 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    19 comments  ·  Flag idea as inappropriate…  ·  Admin →
  7. add $format=json support in query URL

    Now WCF data service supports getting json-formatted response by specifying Accept=application/json header in request only. However, It does not support $format=json as a query option, although it could be circumvented by copying code from http://code.msdn.microsoft.com/DataServicesJSONP and decorating service class with [JSONPSupportBehavior]. The lack of its support is a well-known issue. Hopefully it can be fixed soon and save people hassles of copying extra code and compiling and publishing.

    178 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    5 comments  ·  Flag idea as inappropriate…  ·  Admin →
  8. Annotations

    Allow me to add annotations to my OData model (Range, Display Member, etc) and have those be picked up by the client code generator. The annotations should be exposed by the service's metadata endpoint for any client to consume if needed.

    148 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    4 comments  ·  Flag idea as inappropriate…  ·  Admin →
    completed  ·  Mark Stafford responded

    This feature has been gaining support over time, but is now supported in $metadata and entry/feed payloads in both ATOM and JSON formats.

  9. Caching

    make HTTP and output caching easy to setup in WCF Data Services

    119 votes
    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 →
    completed  ·  Mark Stafford responded

    With better support for ETags and the public transport layer, I think we can effectively consider this complete.

  10. 69 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    4 comments  ·  Flag idea as inappropriate…  ·  Admin →
    completed  ·  Mark Stafford responded

    We now have both specific tooling for Windows Phone as well as the more up-to-date portable libraries that were released in WCF DS 5.6.0.

  11. 60 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    2 comments  ·  Flag idea as inappropriate…  ·  Admin →
  12. Use ParameterExpression to improve performance with EF5 auco-compiled query

    Actually, when we do OData request, WCF Data Services will transform the URL to an expression tree. If we have parameters in our OData Request, these parameters are translated to a constantExpression on the Expression Tree.

    EF5 will recompiled the full query each time we query with a new parameter value.

    Example : http://localhost/WebApplication6/DataService.svc/Products(1) and http://localhost/WebApplication6/DataService.svc/Products(2) will be compiled twice.

    It is possible to compile this query once by using a parameterExpression instead of a constantExpression.

    Please, WCF Data Services Team, use parameterExpression instead of constantExpression, it will clearly boost a lot of OData query.

    See http://social.msdn.microsoft.com/Forums/en/adodotnetdataservices/thread/67573ffd-bab2-48d2-845b-f2172bd35564 for more details

    44 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    2 comments  ·  Flag idea as inappropriate…  ·  Admin →
    completed  ·  Mark Stafford responded

    This is now possible with the public providers released in 5.6.0, and we will soon publish a sample on our blog showing how to do exactly this.

  13. WCF Data Service as Portable Library (SL/WinRT/NET)

    If you want to share your proxies and business logic libraries across Silverlight and WinRT application, you have to define interfaces of your entities to abstract platform specific WCF DS proxy classes.

    If WCF DS would be portable, this complex step would not be required.

    35 votes
    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. Create Standalone OData [de]serializers

    Provide standalone components that serialize/deserialize odata requests/responses for each of the supported formats (atom, json). A standalone component that parses OData URIs would also been good to have.

    26 votes
    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. Support for multiple data sources (odata)

    I would like to see an .NET Framework Data Provider for WCF Data Services (odata) and the ability to expose entities from multiple data sources. This enables the requirement to compose one or more data services as an application service.

    32 votes
    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 →
    completed  ·  Mark Stafford responded

    You can do this with the Reflection Provider over multiple EF providers, with a Custom Provider, etc. The recent public providers improvements also made it possible to support function imports from many sources.

  16. Support collection of primitive and complex types

    Creating entities and entity sets instead of eg. IEnumerable<string> or IEnumerable<MyStruct> properties is just annoying, and of course required domain model modification

    28 votes
    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. Add ability to specify more than 12 properties in the system query option $expand

    We implemented a custom data service provider. Some entity types in our data model have quite a few navigation properties which should be specified in $expand at a time. Unfortunately that number exceeds 12 and for now we have to make workaround in the data model exposing additional properties (this leads to de-nomalizaiton and worsens API design). The backend for our WCF Data service is not a SQL DB and some entity sets in the service are just collections in memory which are part of navigation property associations. We want control our self that $expand limitation and the hardcoded assumption…

    27 votes
    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 →
    completed  ·  Mark Stafford responded

    It’s possible to modify this setting in the static InitializeService method by setting a higher value for config.MaxExpandCount.

  18. ReadingEntity and WritingEntity event support for JSON Format.

    The ReadingEntity event is currently the only point of action that occurs after the client context is finished populating an entity (from a simple read request), and before the entity is handed to the calling code. We need this event to setup entity state values before entities are given to the calling function. This works great with atom, but we prefer the json format for obivous reasons. However, we are forced back to atom until these events are supported.

    21 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    2 comments  ·  Flag idea as inappropriate…  ·  Admin →
  19. Distributed caching over entity framework

    Distributed caching system over entity framework using AppFabric,MemCache...

    18 votes
    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 →
    completed  ·  Mark Stafford responded

    This is possible by creating a custom provider or by using the reflection provider over EF.

  20. Support JSON on WinForms

    Add an option to switch to json format after add the service reference on WinForms project. Json use less bandwidth.

    18 votes
    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 →
← Previous 1

[Closed] WCF Data Services Feature Suggestions

Feedback and Knowledge Base