You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<xref:Microsoft.EntityFrameworkCore.Scaffolding.IReverseEngineerScaffolder> | The main class for scaffolding reverse engineered models.
45
54
<xref:Microsoft.EntityFrameworkCore.Scaffolding.IScaffoldingModelFactory> | Creates a model from a database model.
55
+
<xref:Microsoft.EntityFrameworkCore.Scaffolding.IScaffoldingTypeMapper> | Maps database types to .NET types during scaffolding.
56
+
<xref:Microsoft.EntityFrameworkCore.Scaffolding.ISnapshotModelProcessor> | Processes model snapshots.
57
+
<xref:Microsoft.EntityFrameworkCore.Query.IPrecompiledQueryCodeGenerator> | Generates code for precompiled queries.
58
+
<xref:Microsoft.EntityFrameworkCore.Query.IPrecompiledQueryCodeGeneratorSelector> | Selects the appropriate precompiled query code generator.
46
59
47
60
## Using services
48
61
49
-
These services can also be useful for creating your own tools. For example, when you want to automate part of you design-time workflow.
62
+
These services can also be useful for creating your own tools. For example, when you want to automate part of your design-time workflow.
50
63
51
64
You can build a service provider containing these services using the AddEntityFrameworkDesignTimeServices and AddDbContextDesignTimeServices extension methods.
Copy file name to clipboardExpand all lines: entity-framework/core/miscellaneous/internals/tools.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -114,7 +114,7 @@ In a nutshell, here are some of the strategies it uses.
114
114
115
115
### Design-time services
116
116
117
-
In addition to the application services and the internal DbContext services, there is a third set of [design-time services](xref:core/cli/services). These aren't added to internal service provider since they're never needed at runtime. The design-time services are built by [DesignTimeServicesBuilder](https://github.com/dotnet/efcore/blob/main/src/EFCore.Design/Design/Internal/DesignTimeServicesBuilder.cs). There are two main path--one with a context instance and one without. The one without is primarily used when scaffolding a new DbContext. There are several extensibility points here to allow the user, providers, and extensions to override and customize the services.
117
+
In addition to the application services and the internal DbContext services, there is a third set of [design-time services](xref:core/cli/services). These aren't added to internal service provider since they're never needed at runtime. The design-time services are built by [DesignTimeServicesBuilder](https://github.com/dotnet/efcore/blob/main/src/EFCore.Design/Design/Internal/DesignTimeServicesBuilder.cs). There are two main paths--one with a context instance and one without. The one without is primarily used when scaffolding a new DbContext. There are several extensibility points here to allow the user, providers, and extensions to override and customize the services.
118
118
119
119
The user can customize services by adding an implementation of `IDesignTimeServices` to the startup assembly.
Copy file name to clipboardExpand all lines: entity-framework/core/performance/advanced-performance-topics.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -303,6 +303,10 @@ Because of these limitations, you should only use compiled models if your EF Cor
303
303
304
304
If supporting any of these features is critical to your success, then please vote for the appropriate issues linked above.
305
305
306
+
### Handling compilation errors due to ambiguous type references
307
+
308
+
When compiling models with types that have the same name but exist in different namespaces, the generated code may produce compilation errors due to ambiguous type references. To resolve this, you can customize the code generation to use fully-qualified type names by overriding `CSharpHelper.ShouldUseFullName` to return `true`. See [Design-time services](xref:core/cli/services) for information on how to override design-time services like `ICSharpHelper`.
309
+
306
310
## Reducing runtime overhead
307
311
308
312
As with any layer, EF Core adds a bit of runtime overhead compared to coding directly against lower-level database APIs. This runtime overhead is unlikely to impact most real-world applications in a significant way; the other topics in this performance guide, such as query efficiency, index usage and minimizing roundtrips, are far more important. In addition, even for highly-optimized applications, network latency and database I/O will usually dominate any time spent inside EF Core itself. However, for high-performance, low-latency applications where every bit of perf is important, the following recommendations can be used to reduce EF Core overhead to a minimum:
0 commit comments