1pub mod cascade;
27pub mod change_executor;
28pub mod db_context;
29pub mod db_set;
30pub mod dependency_graph;
31pub mod di;
32pub mod entity;
33pub mod error;
34pub mod interceptor;
35pub mod lazy;
36pub mod metadata;
37pub(crate) mod metadata_cache;
38pub mod migration;
39pub mod model_builder;
40pub mod navigation_loader;
41pub mod observability;
42pub mod provider;
43pub mod query;
44pub mod registration;
45pub mod relations;
46pub mod tracking;
47pub mod transaction;
48
49pub use async_trait;
50
51pub use inventory;
52
53pub use rust_ef_macros::{column, entity, linq, EntityType};
54
55pub mod prelude {
57 pub use crate::db_context::{
58 DbContext, DbContextOptions, DbContextOptionsBuilder, SaveChangesResult,
59 };
60 pub use crate::db_set::{DbSet, IDbSet};
61 pub use crate::di::DbContextServiceCollectionExt;
62 pub use crate::entity::{
63 EntityState, IEntitySnapshot, IEntityType, IFromRow, IGetKeyValues, ILazyInit,
64 INavigationSetter,
65 };
66 pub use crate::error::{EFError, EFErrorCode, EFResult};
67 pub use crate::interceptor::{
68 ISaveChangesInterceptor, SaveChangesContext, SaveChangesResultContext,
69 };
70 pub use crate::lazy::{LazyContext, LazyContextImpl, MAX_LAZY_DEPTH};
71 pub use crate::metadata::EntityTypeMeta;
72 pub use crate::metadata::NavigationMeta;
73 pub use crate::metadata::PropertyMeta;
74 pub use crate::model_builder::{
75 EntityTypeBuilder, IEntityTypeConfiguration, ModelBuilder, PropertyBuilder,
76 };
77 pub use crate::provider::DbValue;
78 pub use crate::provider::IDatabaseProvider;
79 pub use crate::provider::IsolationLevel;
80 pub use crate::query::{
81 BoolExpr, CteSpec, LinqSource, SetOpSpec, SetOperator, WindowFuncKind, WindowSpec,
82 };
83 pub use crate::registration::{EntityConfigRegistration, EntityRegistration};
84 pub use crate::relations::{BelongsTo, DeleteBehavior, HasMany, HasOne};
85 pub use crate::tracking::ChangeTracker;
86 pub use crate::transaction::{DbTransaction, ITransaction};
87 pub use rust_ef_macros::column;
88 pub use rust_ef_macros::entity;
89 pub use rust_ef_macros::linq;
90 pub use rust_ef_macros::EntityType;
91}