Edition 0 Updated to asp. Net core 0



Yüklə 11,82 Mb.
Pdf görüntüsü
səhifə215/288
tarix12.07.2023
ölçüsü11,82 Mb.
#136458
1   ...   211   212   213   214   215   216   217   218   ...   288
NET-Microservices-Architecture-for-Containerized-NET-Applications

override
void
OnModelCreating
(ModelBuilder modelBuilder) 

// ...
modelBuilder.
ApplyConfiguration
(
new
OrderEntityTypeConfiguration
()); 
// Other entities' configuration ...

// At OrderEntityTypeConfiguration.cs from eShopOnContainers
class
OrderEntityTypeConfiguration : IEntityTypeConfiguration 

public
void
Configure
(EntityTypeBuilder orderConfiguration) 

orderConfiguration.
ToTable
(
"orders"
, OrderingContext.
DEFAULT_SCHEMA
); 


247 
CHAPTER 6 | Tackle Business Complexity in a Microservice with DDD and CQRS Patterns 
// Other configuration
var
navigation = 
orderConfiguration.
Metadata
.
FindNavigation
(
nameof
(Order.
OrderItems
)); 
//EF access the OrderItem collection property through its backing field
navigation.
SetPropertyAccessMode
(PropertyAccessMode.
Field
); 
// Other configuration


When you use fields instead of properties, the 
OrderItem
entity is persisted as if it had a 
List
property. However, it exposes a single accessor, the 
AddOrderItem
method, for 
adding new items to the order. As a result, behavior and data are tied together and will be consistent 
throughout any application code that uses the domain model. 
Implement custom repositories with Entity Framework Core 
At the implementation level, a repository is simply a class with data persistence code coordinated by a 
unit of work (DBContext in EF Core) when performing updates, as shown in the following class: 
// using directives...
namespace
Microsoft.
eShopOnContainers
.
Services
.
Ordering
.
Infrastructure
.
Repositories


Yüklə 11,82 Mb.

Dostları ilə paylaş:
1   ...   211   212   213   214   215   216   217   218   ...   288




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin