[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. Provide (better) support for distributed transactions

    Of course it is already possible to handle distributed transaction e.g. by using MSDTC. But compared to what's possible in the Java world, this method feels a little 'outdated'.

    Additionally, because EF7 will get Support for non-relational data providers there will be a strong need to handle distributed transactions that involve relational databases and non-relational datastores within the same transaction. Think of scenarios where a document, image, movie clip is stored in NoSQL datastore but its index fields, metadata and so on may have to be stored in a SQL database.

    2 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 →
  2. Don't abandon WCF Data Services

    Dear OData team, I am requesting that you reconsider this:
    http://blogs.msdn.com/b/odatateam/archive/2014/03/27/future-direction-of-wcf-data-services.aspx

    Web API is not a drop in replacement for WCF Data Services.

    398 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    13 comments  ·  Flag idea as inappropriate…  ·  Admin →
  3. Parameterized DbMigration.Sql argument

    As of EF 6, the `DbMigration.Sql` method has an argument named `anonymousArguments` that I assumed provided support for parameterized SQL, but it does something totally different.

    So what I propose is the addition an argument like the `parameters` argument of the `System.Data.Entity.Database.ExecuteSqlCommand` method that takes a list of parameters. Although I like the anonymous type parameters syntax, remaining consistent with other parts of Entity Framework is understandable.

    54 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 →
  4. where is WCF Data Services Template in VS2013??

    I have been trying to located this Template in VS2013 and trying to solve this manually but unable to create a wcf data project using vs2013 ultimate. The last I have seen this template was in VS2010. Not sure why it is so difficult to find a simple template after paying so much money on the Ultimate Edition.

    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. Fix Complex Types in Data Services 5.6.0 and Entity Framework ≥ 6

    We use a complex type named Address on our entities to normalize addresses off our primary entities. This worked fine when using EF5 and Data Services 5.6.0 but since upgrading to EF6, causes the following error:

    The resource contains value '[Namespace].Address' which cannot be serialized.

    It doesn't seem to be a problem with EF as it works fine behind the data services. We suspect the Microsoft.OData.EntityFrameworkProvider is the culprit.

    16 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 →
  6. Retrieve DbContext in EntityFrameworkDataService

    There doesn't seem to be an obvious way to get the underlying `DbContext` object from the `EntityFrameworkDataService` API for Entity Framework 6 in the new out-of-band WCF Data Services Entity Framework provider package [0].

    There is at least one comment in the announcement article and one thread [1] on the forums about this, so I guess a little note to clarify this (for example on the blog) would be greatly appreciated.

    Note: Making the `DbContext` accessible via the `CurrentDataSource` property (as it was before) would be very nice, as not doing so breaks a lot of code for no obvious…

    101 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 →
  7. CORS support

    Spec: <http://www.w3.org/TR/cors/>

    This suggestion is about full support for CORS in WCF Data Services to (1) eliminate the need for custom WCF service hosts and WCF message inspectors and (2) make it as easy as possible to define a policy.

    101 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 →
  8. improve CommunicationException

    Give us the possibility to differentiate between different exception !

    What I'd like to do is to catch an WCF exception with typical TRY & CATCH, and with a numeric code distinguish between an Message size exceeded and a Timeout errors.

    My suggestion is to add new properties to the exception base class containing a integer number. One for error code and one for suberror code.

    And then when an CommunicationException will be generated is possible to fill the two properties above.

    So i can create different catches based on exception type and, internally, verify which error code has been…

    3 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 →
  9. OWIN guidance/support

    Currently, there is some level of guidance on how top setup WCF Data Services on top of IIS, ASP.NET and WCF, but not a word on OWIN. Is it at all supported?

    This would bring many benefits, including support for CORS[1][2] for free, as well as many other features[3][4][5] that the WCF Data Services team may not want to support directly.

    [1] https://www.nuget.org/packages/Microsoft.Owin.Cors/2.1.0
    [2] https://data.uservoice.com/forums/72027-wcf-data-services-feature-suggestions/suggestions/4450449-cors-support
    [3] https://katanaproject.codeplex.com/SourceControl/latest#src/
    [4] https://www.nuget.org/packages?q=owin
    [5] http://owin.org/

    4 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 →
  10. client

    Provide a set of client hooks to allow interception/modification of WCF data service requests; to prevent or redirect requests based of client side code.

    example use case:
    I would like to encapsulate a 3rd party web service (non odata) into an odata type service without the need to deploy a web service proxy; ie. write a client side odata proxy.

    3 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 →
  11. 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 →
  12. Request Response Compression

    It is said that there is a new feature to do compress when request or response. but i ask in the forum how to realize it, i get no answer, so i submit it again.

    9 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 →
  13. Add DataSet features to DataServiceCollection

    I did some work around for the following features but I wish it could be easier if It is in the DataServiceCollection itself :

    - RejectChanges (i.e. Cancel)
    - OldValues of entities since it is in the VM not the model private properties.
    - Load a DataServiceCollection to another (such as merge in ADO)

    Old features from Delphi 7 ClientDataSet that I miss in .Net since Several Years:

    - Undo and Redo of data changes
    - Take a Snapshot

    9 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. Add state serialization support via DataServiceState to the new portable client

    The OData client for Windows Phone has always had a way to serialize the DataServiceContext and DataServiceCollection<T> objects by using the DataServiceState object. This is critical for tombstoning and avoid having to make the same expensive requests for data whenever the app gets restored from a tombstoned state. It would be great to also have this functionality in Windows Store apps for the same reason of avoiding duplicate calls for data that could be stored serialized.

    16 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 →
  15. 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 →
  16. TransactionScope support client side

    I want to be able to wrap multiple calls to DataServiceContext.SaveChanges in a TransactionScope. EF supports this but it is not possible client side for WCF Data services. I expect the server side method does not know about multiple calls to SaveChanges so the server side method using events etc does not seem to fit.

    5 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. OData "Deep Update" Request Support

    Part of the OData protocol is to allow a "deep update" where you can send a request with one parent and multiple childs. According to some MS employees on the forums, this is currently not supported in the WCF DS and it is really something that should be added.

    21 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 →
  18. Change the parent id for an entity

    If I save an entity that contains a single owner - has a column containing a parent id in the DB - there appears to be no way to change it using DataServiceContext directly. There are 2 scenarios that fail with this message:

    The closed type xxx does not have a corresponding xxx settable property

    1. Save an entity to the DB that has a navigation property (List) that is empty. Add items to this saved entity later and try to save - fails with message.

    2.Save an entity that contains a property (subtype is a single instance not a…

    3 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 →
  19. Allow namespce hierachy from Schema

    I would like the option to separate Entities base on schema, e.g. I have a single database that has two sets of tables that have the same names but are in different Schemas it would be nice to create a single data model that does this. At the moment I have to create different models for each schema is separate folder to get what I want but then I cant have relationships between them.

    Thanks
    Steve

    0 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 →
  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 →
← Previous 1 3 4 5 6 7

[Closed] WCF Data Services Feature Suggestions

Feedback and Knowledge Base