Entity Framework Core Feature Suggestions

Welcome! Use this web site to submit ideas and vote for what features you want to see in future versions of Entity Framework Core.

Our team will only fix bugs, implement small improvements and accept community contributions in the EF6 codebase. Larger feature work and innovation will happen only in the EF Core codebase. If you have ideas for improving EF6, we recommend you submit them on the EF6 GitHub site listed below.

Please also consider these other options before submitting anything to this site:

  • If you want to learn how to use our products, visit our documentation pages.
  • If you want to report bugs, make contributions, or learn about our product roadmaps, visit our EF Core or EF6 project pages on GitHub.
  • If you have technical questions or need help, try StackOverflow’s EF Core or EF6 tags. Note that roadmap questions, bug reports, feature requests or ideas are not appropriate for StackOverflow. Visit StackOverflow’s help center for guidance on appropriate usage.

How can we improve Entity Framework Core?

(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. EF Core Migrations Column ordering

    Migrations on EF Core should do Scaffolding of the fields of entity like the order of the entity (and NOT alphabetical)

    As this req:
    https://github.com/aspnet/EntityFramework/issues/2272
    and
    https://github.com/aspnet/Scaffolding/issues/398

    134 votes
    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      I agree to the terms of service
      Signed in as (Sign out)

      We’ll send you updates on this idea

      8 comments  ·  Flag idea as inappropriate…  ·  Admin →
    • Check Constraints

      Add support for SQL Server's check constraints when using the ModelBuilder.

      1 vote
      Sign in
      Check!
      (thinking…)
      Reset
      or sign in with
      • facebook
      • google
        Password icon
        I agree to the terms of service
        Signed in as (Sign out)

        We’ll send you updates on this idea

        0 comments  ·  Flag idea as inappropriate…  ·  Admin →
      • Visual Studio diagram designer

        A full fledged diagram designer that allows editing the EF Core model using boxes and lines metaphor rather than code. Where you can add/update/remove tables and views from an existing database.

        3 votes
        Sign in
        Check!
        (thinking…)
        Reset
        or sign in with
        • facebook
        • google
          Password icon
          I agree to the terms of service
          Signed in as (Sign out)

          We’ll send you updates on this idea

          0 comments  ·  Flag idea as inappropriate…  ·  Admin →
        • Provide a way to include transaction information in EF logging

          We're able to log the commands that EF is executing, by setting a delegate on DbContext.Database.Log.

          When you do this, you see "Started Transaction at ..." and "Committed Transaction at ..." messages.

          From this, you'd think you could determine the duration of the transactions. You can't. When load becomes high enough for transactions to begin to overlap, there is no way to match the start and commit transaction messages.

          We're able to manipulate the text of the messages that are being logged by deriving a class from DatabaseLogFormatter.

          Within DatabaseLogFormatter.LogCommand() we have access to the DbCommand, and through DbCommand.Transaction to…

          1 vote
          Sign in
          Check!
          (thinking…)
          Reset
          or sign in with
          • facebook
          • google
            Password icon
            I agree to the terms of service
            Signed in as (Sign out)

            We’ll send you updates on this idea

            1 comment  ·  Flag idea as inappropriate…  ·  Admin →
          • Allow the database schema for the database context to be specified at run-time

            We use Oracle databases with different schemas for Train, Val, Prod, etc. for client installs, and even more schemas for internal Dev/Test databases (separate schemas for running manual tests, different schemas for different versions being developed/tested, etc.).

            The current restriction of having to specify a specific schema in the model means that we straight up can't use Entity Framework.

            1 vote
            Sign in
            Check!
            (thinking…)
            Reset
            or sign in with
            • facebook
            • google
              Password icon
              I agree to the terms of service
              Signed in as (Sign out)

              We’ll send you updates on this idea

              0 comments  ·  Flag idea as inappropriate…  ·  Admin →
            • Support tuples in query expressions

              With the introduction of first-class support for tuples in C#7, Entity Framework should add support for tuples inside query expressions along.
              SO issue here: http://stackoverflow.com/questions/17595105/use-tuples-with-entity-framework-contains-statement

              The lack of support for this is super frustrating, especially since anonymous classes are not supported in EF either, and from a performance perspective this is simply a fixed number of values being passed into a query (ie: should not be any more complex to execute on the DB).

              For example, the following should work but is currently not supported:

              IEnumerable<string> identifers = /*get from somewhere*/....;

              Tuple<string, string>[] identifierPairs = originIdentifers.Select( _ => {
              string[]…

              3 votes
              Sign in
              Check!
              (thinking…)
              Reset
              or sign in with
              • facebook
              • google
                Password icon
                I agree to the terms of service
                Signed in as (Sign out)

                We’ll send you updates on this idea

                0 comments  ·  Flag idea as inappropriate…  ·  Admin →
              • Ability to exclude prefixes/patterns from model entity names

                It would be great if a model could be created from an existing database (database first) without including certain SQL naming conventions that may be in place. E.G. Rather than creating a POCO class named tbl_Person, I can tell the tool to exclude the "tbl_" prefix and the class is simply named Person. This would be useful for column/property mapping as well. Being able to use regular expressions for the replacement would probably be helpful. This would be useful when generating 10s to 100s of entities from tables so that they don't have to be renamed individually.

                1 vote
                Sign in
                Check!
                (thinking…)
                Reset
                or sign in with
                • facebook
                • google
                  Password icon
                  I agree to the terms of service
                  Signed in as (Sign out)

                  We’ll send you updates on this idea

                  0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                • More precise log messages

                  When I was experimenting with EF7 and mapped an identity column to a Int64 property, I got an exception. Unfortunately the exception did not told me:
                  - which entity
                  - which property
                  had that mapping error...

                  So really, instead of having 2 pages of stack trace, those 2 words would have been more useful... NHibernate does this, don't tell me that a new ORM (almost 1 and a half decade after the birth of NH) is not capable of doing at least the same as the old ORM...

                  4 votes
                  Sign in
                  Check!
                  (thinking…)
                  Reset
                  or sign in with
                  • facebook
                  • google
                    Password icon
                    I agree to the terms of service
                    Signed in as (Sign out)

                    We’ll send you updates on this idea

                    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                  • Throw exception when you attempt to access a navigation property that is not loaded

                    Of course this should be an optional feature that can be enabled from the DbContext configuration. It only makes sense when Lazy Loading is disabled.

                    This will be particularly useful for writing domain models that are independent of the data access technology and thus cannot use the EF functions to check whether a property is loaded.

                    Currently, if the logic inside the domain model tries to access a navigation property that is not loaded, this will either fetch the data from the database if lazy loading is enabled (a lot of developers do not like lazy loading) or, if lazy…

                    9 votes
                    Sign in
                    Check!
                    (thinking…)
                    Reset
                    or sign in with
                    • facebook
                    • google
                      Password icon
                      I agree to the terms of service
                      Signed in as (Sign out)

                      We’ll send you updates on this idea

                      1 comment  ·  Flag idea as inappropriate…  ·  Admin →
                    • Add DbContext.Database.SqlQuery to Entity Framework Core

                      I can't always get the best performance for extremely specific queries queries in Entity Framework. Sometimes it is best to just write very specific SQL (Currently working on a CTE recursive query that I wouldn't even know how to begin getting into EF without hitting the DB multiple times). Having SqlQuery<T> available give me complete freedom and allows me to use EF in the same way as Micro ORMS like Dapper to map a specific DTO when it makes sense. I don't wan't to have to map a custom object to my context and use the FromSql implementation off of…

                      36 votes
                      Sign in
                      Check!
                      (thinking…)
                      Reset
                      or sign in with
                      • facebook
                      • google
                        Password icon
                        I agree to the terms of service
                        Signed in as (Sign out)

                        We’ll send you updates on this idea

                        6 comments  ·  Flag idea as inappropriate…  ·  Admin →
                      • Configure the string based search to be 'case sensitive' or 'case insensitive'

                        Every time we need to search a string (contains/startswith etc), we need to write .ToLower() in each expression. But there should be a configuration property where we can define whether we want to search in case sensitive way or we want to ignore the case sensitivity.
                        Thus we can avoid writing the same expression in whole application's data layer.

                        2 votes
                        Sign in
                        Check!
                        (thinking…)
                        Reset
                        or sign in with
                        • facebook
                        • google
                          Password icon
                          I agree to the terms of service
                          Signed in as (Sign out)

                          We’ll send you updates on this idea

                          0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                        • AddOrUpdate method

                          It would be great if we can have the AddOrUpdate(...) and AddOrUpdateRange(...) Function in EF7.

                          Just set the expression inside the function or set index and EF check if the to be inserted file need to be added or inserted

                          1 vote
                          Sign in
                          Check!
                          (thinking…)
                          Reset
                          or sign in with
                          • facebook
                          • google
                            Password icon
                            I agree to the terms of service
                            Signed in as (Sign out)

                            We’ll send you updates on this idea

                            0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                          • Support for POCO views using Entities

                            Currently i have a problem of showing a link between different entities - Say students, courses and lectures. Students have few of the attributes of courses, and lectures also have few overlapping attributes of courses (used via reference keys). To show these 3 entities together in a model / UI view, i will always have a compute a single model and bind it to UI. For each change in entities i have to update model (and vice versa). Instead if i get a new POCO view (assuming its supported by EF), i can always show latest data using the new…

                            1 vote
                            Sign in
                            Check!
                            (thinking…)
                            Reset
                            or sign in with
                            • facebook
                            • google
                              Password icon
                              I agree to the terms of service
                              Signed in as (Sign out)

                              We’ll send you updates on this idea

                              0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                            • Add option to update model from database project

                              It would be great to update the EDMX from a database project. Currently we are working with an database project containing the tables, indexes, stored procedures, types etc... If we are able to update the EDMX directly from the database project, it would remove an extra step to connect with a database. In this way, we don't even need a hosted SQL server to update the EDMX.

                              5 votes
                              Sign in
                              Check!
                              (thinking…)
                              Reset
                              or sign in with
                              • facebook
                              • google
                                Password icon
                                I agree to the terms of service
                                Signed in as (Sign out)

                                We’ll send you updates on this idea

                                1 comment  ·  Flag idea as inappropriate…  ·  Admin →
                              • Ignore Duplicate Inserts

                                On the context simply allow a setting to ignore duplicate insertions. It should just add a not exist sub select query to ensure that a duplicate is not inserted on say a primary key or unique key...

                                This just removes a lot of admin on the insert side of things. If the data is already there why complain about about it unless you need to handle it.

                                This will be exceptionally useful on a many to many insert. If this is in place then I dont need to first check both sides of the insert to ensure that the data…

                                2 votes
                                Sign in
                                Check!
                                (thinking…)
                                Reset
                                or sign in with
                                • facebook
                                • google
                                  Password icon
                                  I agree to the terms of service
                                  Signed in as (Sign out)

                                  We’ll send you updates on this idea

                                  1 comment  ·  Flag idea as inappropriate…  ·  Admin →
                                • Migrations: Reset migrations function

                                  Currently, people are hacking a way around the issue of needing to Reset migrations: http://stackoverflow.com/questions/11679385/reset-entity-framework-migrations

                                  The current solution means deleting the migration folder and then deleting the migration history table in the DB, and then adding a brand new migration - but then having to comment out the code in the UP()... which works but isn't optimal for example to check db consistency or when having new developers onboard the team and just being able to run Update-Database on their machine.

                                  4 votes
                                  Sign in
                                  Check!
                                  (thinking…)
                                  Reset
                                  or sign in with
                                  • facebook
                                  • google
                                    Password icon
                                    I agree to the terms of service
                                    Signed in as (Sign out)

                                    We’ll send you updates on this idea

                                    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                                  • Add support for Default Check Constraint

                                    Kindly provide the support for Default Check Constraint, so that we are not forced to supply values to NOT NULL columns that are having a DEFAULT constraint and are being handled in table design.
                                    Currently, work around is to supply some value even is the actual property is NULL

                                    2 votes
                                    Sign in
                                    Check!
                                    (thinking…)
                                    Reset
                                    or sign in with
                                    • facebook
                                    • google
                                      Password icon
                                      I agree to the terms of service
                                      Signed in as (Sign out)

                                      We’ll send you updates on this idea

                                      0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                                    • Option on Import from DataBase to choose how to resolve the conflicts on object names on differents schemas

                                      Add an option when using "update from DataBase" to choose how to resolve conflict name when two or more object have the same names but in diffrents schemas.
                                      Auto resolve -> add a number at the end of object name.
                                      Suffix or Prefix -> add the schema name to the objects names.

                                      1 vote
                                      Sign in
                                      Check!
                                      (thinking…)
                                      Reset
                                      or sign in with
                                      • facebook
                                      • google
                                        Password icon
                                        I agree to the terms of service
                                        Signed in as (Sign out)

                                        We’ll send you updates on this idea

                                        0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                                      • Support JSON LINQ queries

                                        As MS is adding json support to Sql Server 2016 it would be great if EF could support this with linq queries and convert a tree with arrays to nested lists.

                                        8 votes
                                        Sign in
                                        Check!
                                        (thinking…)
                                        Reset
                                        or sign in with
                                        • facebook
                                        • google
                                          Password icon
                                          I agree to the terms of service
                                          Signed in as (Sign out)

                                          We’ll send you updates on this idea

                                          2 comments  ·  Flag idea as inappropriate…  ·  Admin →
                                        • createstoredprocedure Xml ParameterBuilder

                                          CREATE PROCEDURE [dbo].[sp_DownloadItemXml]
                                          @ItemId [int],
                                          @ReturnXML XML = NULL OUT
                                          AS
                                          BEGIN ....

                                          Add System.Data.SqlDbType 'Xml' equivalent to System.Data.Entity.Core.Metadata.Edm.PrimitiveTypeKind to allow an XML parameter to be generated when calling CreateStoredProcedure.

                                          1 vote
                                          Sign in
                                          Check!
                                          (thinking…)
                                          Reset
                                          or sign in with
                                          • facebook
                                          • google
                                            Password icon
                                            I agree to the terms of service
                                            Signed in as (Sign out)

                                            We’ll send you updates on this idea

                                            0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                                          ← Previous 1 3 4 5 12 13
                                          • Don't see your idea?

                                          Entity Framework Core Feature Suggestions

                                          Feedback and Knowledge Base