Entity Framework Feature Suggestions

Welcome! You can use this site to tell the Entity Framework Team what features you want to see in future versions of our products.

Note that moving forward our team will be only fixing bugs, implementing small improvements, and accepting community contributions in the EF6 codebase. Larger feature work and innovation will happen in the EF Core codebase.

Please consider other options besides this site!

  • If you have technical questions or need help, try StackOverflow (EF6 and EF Core) or visit our forums.
  • If you want to learn how to use our products, visit our documentation pages.
  • If you want to report bugs or make contributions, visit our project pages on GitHub: EF6 and EF Core.

How can we improve Entity Framework or Entity Framework Core?

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. IObjectSet .Find() Medhod

    IObjectSet .Find() Medhod

    3 votes
    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)
      You have left! (?) (thinking…)
      1 comment  ·  runtime  ·  Flag idea as inappropriate…  ·  Admin →
    • 2 votes
      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)
        You have left! (?) (thinking…)
        0 comments  ·  runtime  ·  Flag idea as inappropriate…  ·  Admin →
      • A Collection which automatically sets the parent property on add

        class Product {
        Category Category;
        }
        class Category {
        [ParentProperty("Category")]
        ParentHashSet Products
        }

        var prod = new Product();
        var cat = new Category();

        cat.Products.Add(prod);
        Assert.AreEqual(cat, prod.Category);

        2 votes
        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)
          You have left! (?) (thinking…)
          0 comments  ·  runtime  ·  Flag idea as inappropriate…  ·  Admin →
        • Required / MinLength should not allow empty strings

          To my knowledge, the RequiredAttribute data annotation for string types only results in the corresponding database table column being created as NOT NULL.

          I believe this is not sufficient. Moreover, it is in conflict with user interface layers, like MVC, which cannot reliably discern between an input being null or an empty string.

          So I'd like to suggest to amend the behaviour of the RequiredAttribute so that it will additionally create the following T-SQL CHECK constraint: CHECK (LEN(LTRIM(RTRIM( {columnName} ))) > 0).

          See here for full discussion:

          https://entityframework.codeplex.com/discussions/572641

          1 vote
          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)
            You have left! (?) (thinking…)
            0 comments  ·  runtime  ·  Flag idea as inappropriate…  ·  Admin →
          • Materialized event but where is the De-materialize event or override?

            We need to encrypt data (in use via WPF databinding) during the EF4.2 context.SaveData() process. Can't find a place to encrypt without the UI showing the encrypted data. We need a De-materialize or something that allows encryption without affecting the UI. If it's already available, I can't find it. Essentially need the opposite of Materialized event.

            1 vote
            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)
              You have left! (?) (thinking…)
              1 comment  ·  runtime  ·  Flag idea as inappropriate…  ·  Admin →
            • On WcfDataService URI i can't update if the entity key field contains an slash. With Frmaework 4.6.1 and entity framework 6

              On WcfDataService URI i can't update if the entity key field contains an slash. With Frmaework 4.6.1 and entity framework 6

              1 vote
              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)
                You have left! (?) (thinking…)
                0 comments  ·  runtime  ·  Flag idea as inappropriate…  ·  Admin →
              • Support ObjectContext.Translate on joined result sets

                We sometimes end up doing 20 or more result sets in a single stored proc. Many times, a large majority of these are to bring back a single entry for each navigation property mapping.

                I would like to see a "wide" translate function.
                If a query has:
                SELECT a.*, b.*, c.*, d.*

                I'd like to see a version of Translate that can map each row to 4 separate object types, using the assumption that all of object A's columns are first, followed by B's, etc.

                This would greatly reduce the size of our stored procs, though there could be a…

                1 vote
                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)
                  You have left! (?) (thinking…)
                  0 comments  ·  runtime  ·  Flag idea as inappropriate…  ·  Admin →
                • Azure Storage

                  I know it was said that Azure Table Storage support will come after the SQL Server support for ASP .Net 5 is done.

                  I'm just saying, I still want this as soon as possible.

                  1 vote
                  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)
                    You have left! (?) (thinking…)
                    0 comments  ·  runtime  ·  Flag idea as inappropriate…  ·  Admin →
                  • Logging of underlying stored procedure and actual SQL call

                    In production environments, there is always a requirement to log the underlying SQL calls when a WCF/Web site calls database and executes store procedures or any other SQL statement. Right now, via Entity framework there is no way that we can retrieve the actual SP call so that it can be logged for trouble-shooting purposes.
                    It would be great if the product team can create some handle to get this information!

                    1 vote
                    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)
                      You have left! (?) (thinking…)
                      0 comments  ·  runtime  ·  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
                      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)
                        You have left! (?) (thinking…)
                        0 comments  ·  runtime  ·  Flag idea as inappropriate…  ·  Admin →
                      • Allow SqlQuery to execute partial property select statement.

                        SqlQuery does not allow you to execute select query that has missing map on your POCO class. There are case that we need to to fill our POCO class with certain selection of property only.

                        1 vote
                        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)
                          You have left! (?) (thinking…)
                          0 comments  ·  runtime  ·  Flag idea as inappropriate…  ·  Admin →
                        • Events for Insert and Update

                          Some sort of hook to allow for custom managed code to be run when inserts and updates happen. Usage Scenarios:
                          1) allow for SignalR updates of data realtime.
                          2) complex validation rules.
                          3) awesome cache invalidation
                          4) additional logging techniques

                          1 vote
                          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)
                            You have left! (?) (thinking…)
                            1 comment  ·  runtime  ·  Flag idea as inappropriate…  ·  Admin →
                          • Replication at the EntityFramework SaveChanges level

                            Implement Replication to other databases in SaveChanges.
                            I've tried to do it, but I can't save autogenerated IDENTITY values in replicated db's.

                            1 vote
                            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)
                              You have left! (?) (thinking…)
                              0 comments  ·  runtime  ·  Flag idea as inappropriate…  ·  Admin →
                            • ToTable without arguments

                              With Entity Framework 4.1 code first, allow me to specify ToTable on an entity configuration and let the underlying database pick the appropriate table table, while still having the effect ToTable has for TPH or TPC in the physical model of the database.

                              1 vote
                              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)
                                You have left! (?) (thinking…)
                                0 comments  ·  runtime  ·  Flag idea as inappropriate…  ·  Admin →
                              • Formulas in properties / calculated properties

                                Allow having properties that contain the result of formulas. The formula should be specified in a new attribute or fluently.

                                1 vote
                                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)
                                  You have left! (?) (thinking…)
                                  0 comments  ·  runtime  ·  Flag idea as inappropriate…  ·  Admin →
                                • A code-generated clone() method for EntityObject

                                  It is often useful to be able to deep-copy an entity. Currently, some lifting is required to get this done; most suggestions on how to copy entities require serialization and/or reflection and therefore are performance hogs.

                                  The EF has what it takes to offer a really efficient clone() method: the framework could provide generated code that simply copies the required properties. As for referenced data, I suggest that that can be copied optionally and that it can stay in memory even if the clone is detached.

                                  1 vote
                                  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)
                                    You have left! (?) (thinking…)
                                    0 comments  ·  runtime  ·  Flag idea as inappropriate…  ·  Admin →
                                  • Hook to modify LINQ tree

                                    This is similar to the idea of modifying a generated SQL. Except that it applies to an earlier stage. I can imagine a scenario where a third party may come up with a really good LINQ optimizer.

                                    1 vote
                                    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)
                                      You have left! (?) (thinking…)
                                      0 comments  ·  runtime  ·  Flag idea as inappropriate…  ·  Admin →
                                    • Runtime query builder and auto mapper without database schema

                                      can create query on each database with query string that schema not defined for entity framework and auto map to object

                                      1 vote
                                      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)
                                        You have left! (?) (thinking…)
                                        0 comments  ·  runtime  ·  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
                                        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)
                                          You have left! (?) (thinking…)
                                          1 comment  ·  runtime  ·  Flag idea as inappropriate…  ·  Admin →
                                        • sequence

                                          support sequence, not only for key, but as a common field/column/property. This should be mapped, in sql server case, to CREATE SEQUENCE.

                                          1 vote
                                          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)
                                            You have left! (?) (thinking…)
                                            0 comments  ·  runtime  ·  Flag idea as inappropriate…  ·  Admin →
                                          • Don't see your idea?

                                          Entity Framework Feature Suggestions

                                          Feedback and Knowledge Base