[Closed] Entity Framework Core Feature Suggestions

This web site is planned to be retired on July 31, 2019, and it is no longer being monitored by the EF team at Microsoft.

We have decided to unify our feedback process to focus on our existing issue trackers at GitHub.com. We are not planning to migrate the list of ideas posted here, because some of these ideas and votes were submitted a long time ago and therefore the number of votes likely does not accurately reflect the current priority for customers.

You are welcome to re-submit your favorite ideas to our issue trackers. We only request that you first search for existing issues and try to avoid creating duplicates.

Please visit the EF Core issue tracker or the EF6 issue tracker depending on what product you want to report bugs, make contributions, or submit ideas for.

Note that our team will only fix bugs, implement small improvements and accept community contributions on the EF6 codebase. Larger feature work and innovation will happen only on EF Core.

If you want to learn how to use our products, visit our documentation pages.

If you have technical questions or need help, consider asking in Stack Overflow using the EF Core or EF6 tags.

Note that roadmap questions, bug reports, feature requests or ideas are not appropriate for Stack Overflow. Visit Stack Overflow’s help center for guidance on appropriate usage.

Search for existing suggestions

(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. XML data type support

    EF full support of XML field

    369 votes
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    26 comments  ·  Flag idea as inappropriate…  ·  Admin →
  2. Improve conditionals on Table-per-Hierarchy

    It never works when your conditionals are based on a int column so where Type=1 etc. Only seems to work for when some column Is Null. It complains about mapping when you try and do this. Seems impossible to work around

    2 votes
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  3. Hooks to intercept and modify queries on the fly at high and low level

    We have seen that there are lots of discussion surrounding the generated SQL not being optimized. Entity Framework should have a provision wherein User should be able to change the Generated SQL and use it for further processing through some mechanism

    50 votes
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    5 comments  ·  Flag idea as inappropriate…  ·  Admin →

    Resetting status to reflect current state of EF Core. Some of this functionality is available to EF6-based applications: only access to store DbExpression trees and DbCommand are available, and there are no plans for adding a LINQ level interception point.

  4. Lazy loading of non-navigation properties

    At time we may require to lazy load at column level. For e.g. if we have a LOB column which could be huge, we may not want to load that upfront when the table is lazy loaded. Agreed that we can workaroudn this problem, but a straight forward way would be good to have

    267 votes
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    4 comments  ·  Flag idea as inappropriate…  ·  Admin →
  5. support for ordering in Include()

    using the include() with a 1 to many relationship, the data are loaded in the list without any specific order, forcing often to reload directly specifying the sort order

    5 votes
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  6. Easy way to log SQL statements

    Currently this requires lots of ceremony setting up ILogger infrastructure as described in https://docs.microsoft.com/en-us/ef/core/miscellaneous/logging.

    101 votes
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    7 comments  ·  Flag idea as inappropriate…  ·  Admin →
  7. Extra Lazy Loading

    When I do user.Cars.Add() EF load all Cars for that user.
    user.Cars.Count() too

    78 votes
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    6 comments  ·  Flag idea as inappropriate…  ·  Admin →
  8. Enable working config free or with unregistered providers by passing a DbProviderFactory

    Need the ability to use an ObjectContext (or equivelent type) with an unregistered provider. Passing in a DbProviderFactory or DbConnection would be acceptable implementations.

    1 vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  9. LINQ support for comparison of varbinary columns

    It is not currently possible to write a LINQ query that compares a value to data stored in a varbinary column. By comparison, I mean SQL-supported <, <=, >, >= comparisons that lexicographically compare the bytes in the column.

    As far as I know there is no way to write these queries without stepping down into Entity SQL.

    see http://social.msdn.microsoft.com/Forums/en-US/adodotnetentityframework/thread/f90dec50-acc7-4157-8927-acb246ec3572 for more.

    23 votes
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  10. Improve Model First: allow choosing inheritance strategy on a case by case basis

    In my models, there are hierarchies that are persisted using TPT while others are persisted using TPH. It would be great if we could choose the strategy and then have Generate Database From Model create the tables depending on our choice.

    7 votes
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Flag idea as inappropriate…  ·  Admin →
  11. Flexible stored procedures support: allow mapping entities with complex types

    So far a stored procedure cannot be mapped to an entity with complex properties. Well it can be mapped, but the execution fails at runtime. It would be great if we could map stored procedure columns to entity properties.

    150 votes
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  12. Stored procedure support for eager loading graphs

    So far a stored procedure can return only a plain entity. It would be great if we could create a stored procedure that returns orders and details information in a single roundtrip.

    34 votes
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Flag idea as inappropriate…  ·  Admin →
  13. Table-Valued Functions

    Allow table valued functions. This will enable many other scenarios such as full text search or advanced sql querying where LINQ does not support certain TSQL constructs. It can be used as a fallback or last resort whilst still allowing results to be further refined in LINQ.

    TVFs are extremely powerful when used in this way with LINQ. A view or scalar function is not applicable in all scenarios as you may need to either provide a parameter or return a set of rows rather than a scalar. TVFs support these scenarios.

    408 votes
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    9 comments  ·  Flag idea as inappropriate…  ·  Admin →
  14. API for checking database schema correctness

    I would like some API for checking if database schema is correct for edmx storage model.
    It could be something like

    List<string> errors = new List<string>();
    bool isCorrect = context.ValidateDbSchema(errors);

    39 votes
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    2 comments  ·  Flag idea as inappropriate…  ·  Admin →
  15. Make it easier to map MEST scenario's between the entities and the poco's

    Summary:
    It's rather confusing and complex trying to map entities (the table/view representations that were added to the EF Designer) to a single POCO.

    Details:
    Currently, if we wish to have a MEST scenario, we need to manually code this mapping in various places. Now, manually coding is not really a big deal .. it's just that there's a number of quirks and tricks that make this process frustrating and a bit confusing.

    It would be extremly appreciated (and more productive) if the mapping of these Entites on the designer, to their POCO, could be done visually IN the designer,…

    10 votes
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Flag idea as inappropriate…  ·  Admin →
  16. Decouple entity creation in EF and support entities without default constructors and publically settable properties

    EF should decouple the implementation of the entity objects from the mapping functionalities. The EF team could provide the current entity creation as a default variant which can be attached to the mapper. The developer has the option to provide it's own data transfer object layer. Therefore we need to abstract the entities through interface usage an a generic naming schema (dot notation of an object model like Person.Name). So the EF would be much more flexible to use.

    Note by Diego Vega: I am merging this idea with a few other ideas that are approximately equivalent but extend in…

    137 votes
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    11 comments  ·  Flag idea as inappropriate…  ·  Admin →

    This feature is at least partially implemented in EF Core 2.1. There is no custom binding but many additional patterns are now supported by convention, including injecting the property values in the constructor, injecting instances of services also in the constructor and on properties.

    Direct mapping to fields was already supported in 1.1.

  17. Detect only properties that actually changed with change tracking POCO proxies

    I've noticed that in the proxied poco classes, an entity is marked as modified whenever a property is set, regardless of whether the value has actually changed. I think it would be nicer if only truly modified entities are flagged as modified.

    214 votes
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    4 comments  ·  Flag idea as inappropriate…  ·  Admin →

    This is something we can consider in EF Core if at some point we implement change tracking proxies.

    From the EF6 perspective we don’t plan to change the current behavior. An important part of the motivation to create change tracking proxies is to avoid the cost of performing data comparisons.

  18. Support for streams instead of byte arrays for varbinary fields

    Support for mapping System.IO.Stream to Binary fields

    107 votes
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    8 comments  ·  Flag idea as inappropriate…  ·  Admin →
  19. Second Level Cache

    Entity Framework currently support only first level cache (cache for entities). I would like to see a second level cahce implemented in the next version (queries cache).

    965 votes
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    19 comments  ·  Flag idea as inappropriate…  ·  Admin →
  20. Table-Valued Parameters support

    TVP support for stored procedures

    610 votes
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    34 comments  ·  Flag idea as inappropriate…  ·  Admin →

[Closed] Entity Framework Core Feature Suggestions

Feedback and Knowledge Base