Quantcast
Channel: Entity Framework
Viewing all 10318 articles
Browse latest View live

Commented Issue: Migrations :: Sequence contains more that one element when renaming multiple Navigation properties [2433]

$
0
0
Consider the following model:

```
public class Foo
{
[Key]
public int Id { get; set; }

public Bar Bar1 { get; set; }
public Bar Bar2 { get; set; }
}

public class Bar
{
public int Id { get; set; }
}

public class MyContext : DbContext
{
public DbSet<Foo> Foos { get; set; }
public DbSet<Bar> Bars { get; set; }
}
```

Enable-Migrations
Add-Migration Mig1
Update-Database

now, change the name of Bar1 and Bar2 na props to something else:

```
public class Foo
{
[Key]
public int Id { get; set; }

public Bar Bars1 { get; set; }
public Bar Bars2 { get; set; }
}

public class Bar
{
public int Id { get; set; }
}

public class MyContext : DbContext
{
public DbSet<Foo> Foos { get; set; }
public DbSet<Bar> Bars { get; set; }
}
```

Add-Migration Mig2

this throws:

Sequence contains more than one element
at System.Linq.Enumerable.SingleOrDefault[TSource](IEnumerable`1 source)
at System.Data.Entity.Migrations.Infrastructure.EdmModelDiffer.<>c__DisplayClass29a.<>c__DisplayClass29c.<FindRenamedIndexes>b__292(String c)
at System.Linq.Enumerable.WhereSelectListIterator`2.MoveNext()
at System.Linq.Enumerable.SequenceEqual[TSource](IEnumerable`1 first, IEnumerable`1 second, IEqualityComparer`1 comparer)
at System.Data.Entity.Migrations.Infrastructure.EdmModelDiffer.<>c__DisplayClass29a.<FindRenamedIndexes>b__291(<>f__AnonymousType30`2 <>h__TransparentIdentifier28d)
at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
at System.Data.Entity.Migrations.Infrastructure.EdmModelDiffer.Diff(ModelMetadata source, ModelMetadata target, Lazy`1 modificationCommandTreeGenerator, MigrationSqlGenerator migrationSqlGenerator, String sourceModelVersion, String targetModelVersion)
at System.Data.Entity.Migrations.Infrastructure.EdmModelDiffer.Diff(XDocument sourceModel, XDocument targetModel, Lazy`1 modificationCommandTreeGenerator, MigrationSqlGenerator migrationSqlGenerator, String sourceModelVersion, String targetModelVersion)
at System.Data.Entity.Migrations.DbMigrator.Scaffold(String migrationName, String namespace, Boolean ignoreChanges)
at System.Data.Entity.Migrations.Design.MigrationScaffolder.Scaffold(String migrationName, Boolean ignoreChanges)
at System.Data.Entity.Migrations.Design.ToolingFacade.ScaffoldRunner.Scaffold(MigrationScaffolder scaffolder)
at System.Data.Entity.Migrations.Design.ToolingFacade.ScaffoldRunner.Run()
at System.AppDomain.DoCallBack(CrossAppDomainDelegate callBackDelegate)
at System.AppDomain.DoCallBack(CrossAppDomainDelegate callBackDelegate)
at System.Data.Entity.Migrations.Design.ToolingFacade.Run(BaseRunner runner)
at System.Data.Entity.Migrations.Design.ToolingFacade.Scaffold(String migrationName, String language, String rootNamespace, Boolean ignoreChanges)
at System.Data.Entity.Migrations.AddMigrationCommand.Execute(String name, Boolean force, Boolean ignoreChanges)
at System.Data.Entity.Migrations.AddMigrationCommand.<>c__DisplayClass2.<.ctor>b__0()
at System.Data.Entity.Migrations.MigrationsDomainCommand.Execute(Action command)

Comments: No it's not fixed, experienced it today on EF 6.1.3. Wiping out all migrations and generating new one fixed the problem. Do we need to re-open ?

Commented Issue: Migrations :: Sequence contains more that one element when renaming multiple Navigation properties [2433]

$
0
0
Consider the following model:

```
public class Foo
{
[Key]
public int Id { get; set; }

public Bar Bar1 { get; set; }
public Bar Bar2 { get; set; }
}

public class Bar
{
public int Id { get; set; }
}

public class MyContext : DbContext
{
public DbSet<Foo> Foos { get; set; }
public DbSet<Bar> Bars { get; set; }
}
```

Enable-Migrations
Add-Migration Mig1
Update-Database

now, change the name of Bar1 and Bar2 na props to something else:

```
public class Foo
{
[Key]
public int Id { get; set; }

public Bar Bars1 { get; set; }
public Bar Bars2 { get; set; }
}

public class Bar
{
public int Id { get; set; }
}

public class MyContext : DbContext
{
public DbSet<Foo> Foos { get; set; }
public DbSet<Bar> Bars { get; set; }
}
```

Add-Migration Mig2

this throws:

Sequence contains more than one element
at System.Linq.Enumerable.SingleOrDefault[TSource](IEnumerable`1 source)
at System.Data.Entity.Migrations.Infrastructure.EdmModelDiffer.<>c__DisplayClass29a.<>c__DisplayClass29c.<FindRenamedIndexes>b__292(String c)
at System.Linq.Enumerable.WhereSelectListIterator`2.MoveNext()
at System.Linq.Enumerable.SequenceEqual[TSource](IEnumerable`1 first, IEnumerable`1 second, IEqualityComparer`1 comparer)
at System.Data.Entity.Migrations.Infrastructure.EdmModelDiffer.<>c__DisplayClass29a.<FindRenamedIndexes>b__291(<>f__AnonymousType30`2 <>h__TransparentIdentifier28d)
at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
at System.Data.Entity.Migrations.Infrastructure.EdmModelDiffer.Diff(ModelMetadata source, ModelMetadata target, Lazy`1 modificationCommandTreeGenerator, MigrationSqlGenerator migrationSqlGenerator, String sourceModelVersion, String targetModelVersion)
at System.Data.Entity.Migrations.Infrastructure.EdmModelDiffer.Diff(XDocument sourceModel, XDocument targetModel, Lazy`1 modificationCommandTreeGenerator, MigrationSqlGenerator migrationSqlGenerator, String sourceModelVersion, String targetModelVersion)
at System.Data.Entity.Migrations.DbMigrator.Scaffold(String migrationName, String namespace, Boolean ignoreChanges)
at System.Data.Entity.Migrations.Design.MigrationScaffolder.Scaffold(String migrationName, Boolean ignoreChanges)
at System.Data.Entity.Migrations.Design.ToolingFacade.ScaffoldRunner.Scaffold(MigrationScaffolder scaffolder)
at System.Data.Entity.Migrations.Design.ToolingFacade.ScaffoldRunner.Run()
at System.AppDomain.DoCallBack(CrossAppDomainDelegate callBackDelegate)
at System.AppDomain.DoCallBack(CrossAppDomainDelegate callBackDelegate)
at System.Data.Entity.Migrations.Design.ToolingFacade.Run(BaseRunner runner)
at System.Data.Entity.Migrations.Design.ToolingFacade.Scaffold(String migrationName, String language, String rootNamespace, Boolean ignoreChanges)
at System.Data.Entity.Migrations.AddMigrationCommand.Execute(String name, Boolean force, Boolean ignoreChanges)
at System.Data.Entity.Migrations.AddMigrationCommand.<>c__DisplayClass2.<.ctor>b__0()
at System.Data.Entity.Migrations.MigrationsDomainCommand.Execute(Action command)

Comments: Do you still have the scenario that reproduces the issue? (model before migration and model after migration). If so, please share and we will take a look.

Created Unassigned: scaffold source code corruption [2918]

$
0
0
* dbcontext scaffold already run with -c contextname -o Outputdir -s dbschema
* Controller created with views and so on
* database changed
* rerun dbcontext scaffold unfortunatelly with a typo: -c contextname -o Outputdir -s __dbschema2__ (humans are allowed to make mistakes)

__Result__:
* scaffold deletes all previous models in Outputdir
* because of the typing error there is no dbschema2 hence no tables and no models
* created context, after it has been deleted by scaffold, is empty
* the Project doesnt compile any more because of missing references to deleted models in views, ...
* rerun of scaffold with correct Parameters is no more possible because scaffold requires the project the Project to be built first

__Depening on situation reverting the damage caused by scaffold could take a lot of time__


Commented Unassigned: scaffold source code corruption [2918]

$
0
0
* dbcontext scaffold already run with -c contextname -o Outputdir -s dbschema
* Controller created with views and so on
* database changed
* rerun dbcontext scaffold unfortunatelly with a typo: -c contextname -o Outputdir -s __dbschema2__ (humans are allowed to make mistakes)

__Result__:
* scaffold deletes all previous models in Outputdir
* because of the typing error there is no dbschema2 hence no tables and no models
* created context, after it has been deleted by scaffold, is empty
* the Project doesnt compile any more because of missing references to deleted models in views, ...
* rerun of scaffold with correct Parameters is no more possible because scaffold requires the project the Project to be built first

__Depening on situation reverting the damage caused by scaffold could take a lot of time__


Comments: I should apologize, it is all about EF 7. I've got the wrong site.

Closed Unassigned: InitializedDatabases stores static reference to DbCompiledModel even when custom created DbCompiledModel [2905]

$
0
0
Our Database has more than __350__ schemas, so to optimize memory usage we implemented pool for _DbCompiledModel_ which will allow GC to collect _DbCompiledModel_ on memory pressure.

_LazyInternalContext_ doesn't cache _DbCompiledModel_ if you pass it to _DbContext_ constructor, but it still stores reference in _InitializedDatabases_ static property which doesn't allow GC to collect _DbCompiledModel_ instance.

_DbCompiledModel_ in _InitializedDatabases_ seams to be only used as a flag/key, and can be replaced with object's hashcode.
Comments: **EF Team Triage:** Given the relative priority compared to other issues on the EF6.x backlog, this isn't something our team is planning to change. That said, we would definitely consider a pull request to change this behavior.

Commented Unassigned: Could EF do a simple query? [2897]

$
0
0
This query:

```
var result = _context.Set<Physician>().Where(p => p.Id == someId)
.SelectMany(p => p.Workdays);
```



causes 'Only parameterless constructors and initializers are supported in LINQ to Entities.' neither Physician nor Workday has constructor! they are unidirectional one to many with default convention!

I recently migrated from nhibenate to Entity Framework, unfortunately, now I have no productivity! Thank you EF team!

:(
Comments: @Nima - Can you share a complete code listing the demonstrates the issue. From the snippet provided there isn't enough info to work out what is happening. Can you also share the complete stack trace of the exception.

Commented Unassigned: SQL azure | Entity Framework | Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding [2908]

$
0
0
Hello,

I have a sample web application using Entity Framework to connect to SQL server.

I’m using code first approach and enable code first migrations.

I have added the below code in the Global.ascx which ebables you to create the DB if not exists and applies the migrations.
protected void Application_Start(object sender, EventArgs e)
{
Database.SetInitializer(new MigrateDatabaseToLatestVersion<EmployeeContext, Configuration>());
}

The application works fine when deployed to local sql server with the below connection string.
<add name="EmployeeContext" connectionString="Data Source=SystemName;Initial Catalog=EmployeeContext;Integrated Security=SSPI;" providerName="System.Data.SqlClient"/>

Currently, I have changed the connectionstring as shown below to point to SQL Azure.
<add name="EmployeeContext" connectionString="Data Source=tcp:kirkum.database.windows.net,1433;Initial Catalog=EmployeeContext;User ID=userid;Password=pass;Connect Timeout=30;Encrypt=True;TrustServerCertificate=False;" providerName="System.Data.SqlClient"/>

When I run the application for the first time I see the error “Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.” Inner exception “{"The wait operation timed out"}”.
I see that the database has been created n SQL Azure but the schema is not getting created.

If I create the Azure database manually and run the application, then the migrations are applied and schema is created successfully.

I have attached the sample to reproduce the issue. Rename the “CodeFirstMigration.abc” to “CodeFirstMigration.zip”.

Any thoughts on his?

I tried that settings but that didn’t help.
public class EmployeeContext : DbContext
{
public EmployeeContext()
: base("name=EmployeeContext")
{
// three minute command timeout
this.Database.CommandTimeout = 300;
//((IObjectContextAdapter)this).ObjectContext.CommandTimeout = 300;
}
public DbSet<Employee> Employees { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{


}
}



Comments: Hey, EF has a separate timeout setting for migration operations (since you may want a longer timeout on long running migrations that you application commands). In your migrations configuration class (typically `/Migrations/Configuration.cs`) you can set the [CommandTimeout](https://msdn.microsoft.com/en-us/library/system.data.entity.migrations.dbmigrationsconfiguration.commandtimeout(v=vs.113).aspx#P:System.Data.Entity.Migrations.DbMigrationsConfiguration.CommandTimeout) property in the constructor. ~Rowan

Closed Unassigned: DropPrimaryKey fails when migrating pre-EF4.3 table [2911]

$
0
0
DropPrimaryKey makes an assumption that the primary key is named PK_<table name>. However, on a pre-EF4.3 database the primary key has a different name. I had to put the following code in my migration to work around it.

Configuration.IsPreEF4_3Database is a static bool that gets set based on the existence of the __MigrationHistory table

void Up()
{
// Pre EF 4.3 versions of the database
if (Configuration.IsPreEF4_3Database)
{
Sql("ALTER TABLE [dbo.Bookmarks] DROP CONSTRAINT PK__Bookmark__81D060077F60ED59");
}
else
{
DropPrimaryKey("dbo.Bookmarks");
}
}

Perhaps DropPrimaryKey should be changed to determine the actual name of the primary key.



Comments: Unfortunately you do have to manually specify the name - there really wasn't a good way to solve this in EF. But rather than dropping to `SQL(...)` you can just use a [different overload of DropPrimaryKey() that specifies the name](https://msdn.microsoft.com/en-us/library/system.data.entity.migrations.dbmigration.dropprimarykey(v=vs.113).aspx#M:System.Data.Entity.Migrations.DbMigration.DropPrimaryKey(System.String,System.String,System.Object)). `DropPrimaryKey("dbo.Bookmarks", "PK__Bookmark__81D060077F60ED59");`

Commented Unassigned: Using DB sequence for primary keys fields [2913]

$
0
0
It is not possible to insert record to the MS SQL DB using EF6 using the following approach:

1. We have MS SQL DB with tables where primary key fields filled with sequence. Sequence is defined as default for the field like this:
```
ALTER TABLE [dbo].[TestTable] ADD DEFAULT (NEXT VALUE FOR [dbo].[TestTableSeq]) FOR [FooID]
```
2. Generated entities from the DB. Please note that if we look at DB model diagram, we see that EF recognized primary key field.
3. We create new instance of TestTable entity, fill all fields except FooID
4. Save it to the database. It saves it with 0 first time and then it fails next times, because record with 0 FooID already exists.

If we use Identity for PK generation, it works fine. But we have to use sequences. How to do it correctly in EF6?
Comments: By default, EF won't recognize default values as meaning the column has a store generated value... but after you've created the model, you can tell EF that the column follows the identity pattern. I know it's not technically using SQL Server IDENTITY generation... but as far as EF is concerned, setting the identity pattern just lets EF know that it needs to read back the generated value after inserting the row.

Closed Unassigned: Output parameters in procedure mapped to entities [2912]

$
0
0
EF6 allows us to map procedures to entities to use them instead of insert, update and delete commands.

But if insert procedure has output parameters, they are not processed correctly. EF pass values to the procedure, but do not update entity with values from output parameters after the call.

EF allows to create functions to call stored procedures with output parameters, but it is not possible to map them to the entities.

How to map INSERT and UPDATE procedures correctly to update entity from output parameters?
Comments: **EF Team Triage:** EF is very opinionated about the shape of stored procedure that it uses for INSERT/UPDATE/DELETE. Unfortunately output parameters aren't supported. The full list of what is supported is at https://msdn.microsoft.com/en-us/data/dn468673. As we build out EF Core (https://github.com/aspnet/EntityFramework) we are making sure things like this are more flexible than they are in EF6.x.

Created Unassigned: Remove binaries from project, use target file instead [2919]

$
0
0
Having binaries added to the project is not very convenient, goes against good practice, git doesn't like it, and it is not necessary. Use a target file instead to copy them from the packages folder to the output folder.

Commented Unassigned: Using DB sequence for primary keys fields [2913]

$
0
0
It is not possible to insert record to the MS SQL DB using EF6 using the following approach:

1. We have MS SQL DB with tables where primary key fields filled with sequence. Sequence is defined as default for the field like this:
```
ALTER TABLE [dbo].[TestTable] ADD DEFAULT (NEXT VALUE FOR [dbo].[TestTableSeq]) FOR [FooID]
```
2. Generated entities from the DB. Please note that if we look at DB model diagram, we see that EF recognized primary key field.
3. We create new instance of TestTable entity, fill all fields except FooID
4. Save it to the database. It saves it with 0 first time and then it fails next times, because record with 0 FooID already exists.

If we use Identity for PK generation, it works fine. But we have to use sequences. How to do it correctly in EF6?
Comments: I know about IDENTITY generation, but it is not clear how to use this mode if we have sequence. We added attribute to primary key field ``` [DatabaseGenerated(DatabaseGeneratedOption.Identity)] ``` After we did it, EF adds additional select like this: ``` SELECT [ID] FROM [dbo].[TestTable] WHERE @@ROWCOUNT > 0 AND [ID] = scope_identity() ``` But how to adjust that select, because we have to get ID value from sequence (NEXT VALUE FOR dbo.TestTableSeq), not from scope_identity()?

Commented Feature: Designer: Better navigation property names when multiple relationships to the same table [125]

$
0
0
When multiple relationships to the same table are present the navigation properties are just postfixed with a name. We could consider using the FK name or some other means to make it clearer which is which.

This item was migrated from the DevDiv work item tracking system [ID=6053].

This work item originated from connect.microsoft.com. A member of the EF team at Microsoft should close the related Connect issue when closing this work item.

Comments: I'm also having issues with this. Is there any update to this issue? Seems like the Code First from Existing Database is lacking if the navigation properties are generated like this with meaningless names. Is it best practice to generate from an existing database the first time and then just modify the models moving forward? Then, you'd have to re-generate any newly created database objects from the models each time. Or, is it still an ok practice to leave your models untouched and always generate from the database?

Created Unassigned: Investigate parameter type mismatches for DateTime affecting AlwaysEncrypted scenarios [2920]

$
0
0
It seems that EF may currently create parameters with type SqlDbType.DateTime2 for columns that are of type DateTime in the database. This works generally because of implicit conversions but it won't work with AlwaysEncripted.

See https://social.msdn.microsoft.com/Forums/sqlserver/en-US/a5e69d82-465d-4675-a697-6abade63032f/error-inserting-data-into-alwaysencrypted-column?forum=SQLServer2016Preview

Possible workarounds without changing this:

1. Change all DateTime columns to be DateTime2, e.g. using code first:
``` C#
modelBuilder.Properties<DateTime>()
.Configure(p => p.HasColumnType("DateTime2"));
```
2. Register an IDbCommandInterceptor that forces all SqlDbType.DateTime2 parameters to change to DateTime.

Edited Issue: Investigate parameter type mismatches for DateTime affecting AlwaysEncrypted scenarios [2920]

$
0
0
It seems that EF may currently create parameters with type SqlDbType.DateTime2 for columns that are of type DateTime in the database. This works generally because of implicit conversions but it won't work with AlwaysEncripted.

See https://social.msdn.microsoft.com/Forums/sqlserver/en-US/a5e69d82-465d-4675-a697-6abade63032f/error-inserting-data-into-alwaysencrypted-column?forum=SQLServer2016Preview

Possible workarounds without changing this:

1. Change all DateTime columns to be DateTime2, e.g. using code first:
``` C#
modelBuilder.Properties<DateTime>()
.Configure(p => p.HasColumnType("DateTime2"));
```
2. Register an IDbCommandInterceptor that forces all SqlDbType.DateTime2 parameters to change to DateTime.


Edited Issue: Investigate parameter type mismatches for DateTime affecting AlwaysEncrypted scenarios [2920]

$
0
0
It seems that EF may currently create parameters with type SqlDbType.DateTime2 for columns that are of type DateTime in the database. This works generally because of implicit conversions but it won't work with AlwaysEncripted.

See https://social.msdn.microsoft.com/Forums/sqlserver/en-US/a5e69d82-465d-4675-a697-6abade63032f/error-inserting-data-into-alwaysencrypted-column?forum=SQLServer2016Preview

Possible workarounds without changing this:

1. Change all DateTime columns to be DateTime2, e.g. using code first:
``` C#
modelBuilder.Properties<DateTime>()
.Configure(p => p.HasColumnType("DateTime2"));
```
2. Register an IDbCommandInterceptor that forces all SqlDbType.DateTime2 parameters to change to DateTime.

Note that this could affect other column/parameter types as long as today we might be relying on implicit conversions.

Edited Issue: Investigate parameter type mismatches for DateTime affecting AlwaysEncrypted scenarios [2920]

$
0
0
It seems that EF may currently create parameters with type `SqlDbType.DateTime2` for columns that are of type `DateTime` in the database. This works generally because of implicit conversions but it won't work with AlwaysEncripted.

See https://social.msdn.microsoft.com/Forums/sqlserver/en-US/a5e69d82-465d-4675-a697-6abade63032f/error-inserting-data-into-alwaysencrypted-column?forum=SQLServer2016Preview

Possible workarounds without changing this:

1. Change all DateTime columns to be DateTime2, e.g. using code first:
``` C#
modelBuilder.Properties<DateTime>()
.Configure(p => p.HasColumnType("DateTime2"));
```
2. Register a `IDbCommandInterceptor` that forces all `SqlDbType.DateTime2` parameters to change to `DateTime`.

Note that this could affect other column/parameter types as long as today we might be relying on implicit conversions.

Commented Issue: Investigate parameter type mismatches for DateTime affecting AlwaysEncrypted scenarios [2920]

$
0
0
It seems that EF may currently create parameters with type `SqlDbType.DateTime2` for columns that are of type `DateTime` in the database. This works generally because of implicit conversions but it won't work with AlwaysEncripted.

See https://social.msdn.microsoft.com/Forums/sqlserver/en-US/a5e69d82-465d-4675-a697-6abade63032f/error-inserting-data-into-alwaysencrypted-column?forum=SQLServer2016Preview

Possible workarounds without changing this:

1. Change all DateTime columns to be DateTime2, e.g. using code first:
``` C#
modelBuilder.Properties<DateTime>()
.Configure(p => p.HasColumnType("DateTime2"));
```
2. Register a `IDbCommandInterceptor` that forces all `SqlDbType.DateTime2` parameters to change to `DateTime`.

Note that this could affect other column/parameter types as long as today we might be relying on implicit conversions.
Comments: Set the providermanifesttoken to 2005?

Commented Issue: Investigate parameter type mismatches for DateTime affecting AlwaysEncrypted scenarios [2920]

$
0
0
It seems that EF may currently create parameters with type `SqlDbType.DateTime2` for columns that are of type `DateTime` in the database. This works generally because of implicit conversions but it won't work with AlwaysEncripted.

See https://social.msdn.microsoft.com/Forums/sqlserver/en-US/a5e69d82-465d-4675-a697-6abade63032f/error-inserting-data-into-alwaysencrypted-column?forum=SQLServer2016Preview

Possible workarounds without changing this:

1. Change all DateTime columns to be DateTime2, e.g. using code first:
``` C#
modelBuilder.Properties<DateTime>()
.Configure(p => p.HasColumnType("DateTime2"));
```
2. Register a `IDbCommandInterceptor` that forces all `SqlDbType.DateTime2` parameters to change to `DateTime`.

Note that this could affect other column/parameter types as long as today we might be relying on implicit conversions.
Comments: Could help. I haven't had time to look at the code yet. Do you know more about it?

Commented Feature: Provide better support for working with disconnected entities [864]

$
0
0
This item is to track adding better support for change tracking with graphs of disconnected entities. For more information see this discussion:

"Merge Disconnected Object Graph"
http://entityframework.codeplex.com/discussions/432661

And this user voice item:

"Merge method: automatic synchronization of relationships on a disconnected entity"
http://data.uservoice.com/forums/72025-entity-framework-feature-suggestions/suggestions/1069431-merge-method-automatic-synchronization-of-relation

Comments: Has better support for disconnected entities been added to EF7 by any chance?
Viewing all 10318 articles
Browse latest View live




Latest Images