Interface IInheritedStructure<T>
Inherited repository structure descriptor
Namespace: XData.Mapping.Dynamic
Assembly: XData.docfx.dll
Syntax
public interface IInheritedStructure<T>
where T : class, ISqlObject, new()
Type Parameters
| Name | Description |
|---|---|
| T | Data object type |
Methods
| Improve this Doc View SourceAddInnerFilters(String, Expression<Func<IInnerFilterAdapter, IFilterDescription>>[])
Add inner filters
Declaration
IInheritedStructure<T> AddInnerFilters(string alias, params Expression<Func<IInnerFilterAdapter, IFilterDescription>>[] filters)
Parameters
| Type | Name | Description |
|---|---|---|
| String | alias | Data source alias |
| Expression<Func<IInnerFilterAdapter, IFilterDescription>>[] | filters | Filters to add |
Returns
| Type | Description |
|---|---|
| IInheritedStructure<T> | Inherited repository structure |
AddSubqueryLinks(String, Expression<Func<ISubqueryLinkAdapter<T>, IFilterDescription>>[])
Add subquery links
Declaration
IInheritedStructure<T> AddSubqueryLinks(string alias, params Expression<Func<ISubqueryLinkAdapter<T>, IFilterDescription>>[] filters)
Parameters
| Type | Name | Description |
|---|---|---|
| String | alias | Subquery alias |
| Expression<Func<ISubqueryLinkAdapter<T>, IFilterDescription>>[] | filters | Links to add |
Returns
| Type | Description |
|---|---|
| IInheritedStructure<T> | Inherited repository structure |
AddSubqueryLinks<TSubquery>(String, Expression<Func<ISubqueryLinkAdapter<T, TSubquery>, IFilterDescription>>[])
Add subquery links
Declaration
IInheritedStructure<T> AddSubqueryLinks<TSubquery>(string alias, params Expression<Func<ISubqueryLinkAdapter<T, TSubquery>, IFilterDescription>>[] filters)
where TSubquery : class
Parameters
| Type | Name | Description |
|---|---|---|
| String | alias | Subquery alias |
| Expression<Func<ISubqueryLinkAdapter<T, TSubquery>, IFilterDescription>>[] | filters | Links to add |
Returns
| Type | Description |
|---|---|
| IInheritedStructure<T> | Inherited repository structure |
Type Parameters
| Name | Description |
|---|---|
| TSubquery |
Column<TResult>(String, Expression<Func<IRepositoryStructureAdapter<T>, TResult>>)
Dynamic repository hidden property mapping
Declaration
IInheritedStructure<T> Column<TResult>(string name, Expression<Func<IRepositoryStructureAdapter<T>, TResult>> mapper)
Parameters
| Type | Name | Description |
|---|---|---|
| String | name | Hidden property name |
| Expression<Func<IRepositoryStructureAdapter<T>, TResult>> | mapper | Property mapping expression |
Returns
| Type | Description |
|---|---|
| IInheritedStructure<T> | Inherited repository structure |
Type Parameters
| Name | Description |
|---|---|
| TResult | Hidden property type |
See Also
| Improve this Doc View SourceDataTable(String, String, Expression<Func<IInnerFilterAdapter, IFilterDescription>>[])
Dynamic repository table mapping
Declaration
IInheritedStructure<T> DataTable(string name, string alias, params Expression<Func<IInnerFilterAdapter, IFilterDescription>>[] filters)
Parameters
| Type | Name | Description |
|---|---|---|
| String | name | Table name |
| String | alias | Table alias |
| Expression<Func<IInnerFilterAdapter, IFilterDescription>>[] | filters | Filters and links applied to table |
Returns
| Type | Description |
|---|---|
| IInheritedStructure<T> | Inherited repository structure |
See Also
| Improve this Doc View SourceDataTable(String, String, String, Expression<Func<IInnerFilterAdapter, IFilterDescription>>[])
Dynamic repository table mapping
Declaration
IInheritedStructure<T> DataTable(string name, string alias, string parent = null, params Expression<Func<IInnerFilterAdapter, IFilterDescription>>[] filters)
Parameters
| Type | Name | Description |
|---|---|---|
| String | name | Table name |
| String | alias | Table alias |
| String | parent | Parent table alias |
| Expression<Func<IInnerFilterAdapter, IFilterDescription>>[] | filters | Filters and links applied to table |
Returns
| Type | Description |
|---|---|
| IInheritedStructure<T> | Inherited repository structure |
See Also
| Improve this Doc View SourceHint(String, String, HintType)
Dynamic repository data source hint
Declaration
IInheritedStructure<T> Hint(string alias, string hint, HintType hintType = HintType.Select)
Parameters
| Type | Name | Description |
|---|---|---|
| String | alias | Data source alias |
| String | hint | Hint |
| HintType | hintType | Hint type |
Returns
| Type | Description |
|---|---|
| IInheritedStructure<T> | Inherited repository structure |
See Also
| Improve this Doc View SourceInnerView(String, Type, Expression<Func<ISubqueryLinkAdapter<T>, IFilterDescription>>[])
Dynamic repository inner view mapping
Declaration
IInheritedStructure<T> InnerView(string alias, Type innerViewType, params Expression<Func<ISubqueryLinkAdapter<T>, IFilterDescription>>[] filters)
Parameters
| Type | Name | Description |
|---|---|---|
| String | alias | Inner view alias |
| Type | innerViewType | Inner view statically mapped type |
| Expression<Func<ISubqueryLinkAdapter<T>, IFilterDescription>>[] | filters | Filters and links applied to inner view |
Returns
| Type | Description |
|---|---|
| IInheritedStructure<T> | Inherited repository structure |
See Also
| Improve this Doc View SourceInnerView<TInnerView>(String, Expression<Func<ISubqueryLinkAdapter<T, TInnerView>, IFilterDescription>>[])
Dynamic repository inner view mapping
Declaration
IInheritedStructure<T> InnerView<TInnerView>(string alias, params Expression<Func<ISubqueryLinkAdapter<T, TInnerView>, IFilterDescription>>[] filters)
where TInnerView : class
Parameters
| Type | Name | Description |
|---|---|---|
| String | alias | Inner view alias |
| Expression<Func<ISubqueryLinkAdapter<T, TInnerView>, IFilterDescription>>[] | filters | Filters and links applied to inner view |
Returns
| Type | Description |
|---|---|
| IInheritedStructure<T> | Inherited repository structure |
Type Parameters
| Name | Description |
|---|---|
| TInnerView | Inner view statically mapped type |
See Also
| Improve this Doc View SourceInnerView<TInnerView>(String, IQueryDescription<TInnerView>, Expression<Func<ISubqueryLinkAdapter<T, TInnerView>, IFilterDescription>>[])
Dynamic repository inner view mapping
Declaration
IInheritedStructure<T> InnerView<TInnerView>(string alias, IQueryDescription<TInnerView> sub, params Expression<Func<ISubqueryLinkAdapter<T, TInnerView>, IFilterDescription>>[] filters)
where TInnerView : class
Parameters
| Type | Name | Description |
|---|---|---|
| String | alias | Inner view alias |
| IQueryDescription<TInnerView> | sub | Inner view query structure |
| Expression<Func<ISubqueryLinkAdapter<T, TInnerView>, IFilterDescription>>[] | filters | Filters and links applied to inner view |
Returns
| Type | Description |
|---|---|
| IInheritedStructure<T> | Inherited repository structure |
Type Parameters
| Name | Description |
|---|---|
| TInnerView |
See Also
InnerView<TInnerView>(String, Variable[], Expression<Func<ISubqueryLinkAdapter<T, TInnerView>, IFilterDescription>>[])
Dynamic repository inner view mapping
Declaration
IInheritedStructure<T> InnerView<TInnerView>(string alias, Variable[] variables, params Expression<Func<ISubqueryLinkAdapter<T, TInnerView>, IFilterDescription>>[] filters)
where TInnerView : class
Parameters
| Type | Name | Description |
|---|---|---|
| String | alias | Inner view alias |
| Variable[] | variables | Inner view variables |
| Expression<Func<ISubqueryLinkAdapter<T, TInnerView>, IFilterDescription>>[] | filters | Filters and links applied to inner view |
Returns
| Type | Description |
|---|---|
| IInheritedStructure<T> | Inherited repository structure |
Type Parameters
| Name | Description |
|---|---|
| TInnerView | Inner view statically mapped type |
See Also
Map(Expression<Func<IExternalLinkDefinitionAdapter<T>, IExternalLinkDefinition>>[])
Dynamic repository properties mapping
Declaration
IRepositoryDescription<T> Map(params Expression<Func<IExternalLinkDefinitionAdapter<T>, IExternalLinkDefinition>>[] externalLinks)
Parameters
| Type | Name | Description |
|---|---|---|
| Expression<Func<IExternalLinkDefinitionAdapter<T>, IExternalLinkDefinition>>[] | externalLinks | External link descriptions |
Returns
| Type | Description |
|---|---|
| IRepositoryDescription<T> | Dynamic repository description |
See Also
Map(Expression<Func<IRepositoryStructureAdapter<T>, T>>, Expression<Func<IExternalLinkDefinitionAdapter<T>, IExternalLinkDefinition>>[])
Dynamic repository properties mapping
Declaration
IRepositoryDescription<T> Map(Expression<Func<IRepositoryStructureAdapter<T>, T>> mapper, params Expression<Func<IExternalLinkDefinitionAdapter<T>, IExternalLinkDefinition>>[] externalLinks)
Parameters
| Type | Name | Description |
|---|---|---|
| Expression<Func<IRepositoryStructureAdapter<T>, T>> | mapper | Mapping expression |
| Expression<Func<IExternalLinkDefinitionAdapter<T>, IExternalLinkDefinition>>[] | externalLinks | External link descriptions |
Returns
| Type | Description |
|---|---|
| IRepositoryDescription<T> | Dynamic repository description |
See Also
Parameter<TResult>(String, Int32, String, DbType, Expression<Func<IProcedureParameterAdapter, IProcedureParameterFlag>>[])
Dynamic repository procedure parameter mapping
Declaration
IInheritedStructure<T> Parameter<TResult>(string alias, int order, string binding, DbType type, params Expression<Func<IProcedureParameterAdapter, IProcedureParameterFlag>>[] attributes)
Parameters
| Type | Name | Description |
|---|---|---|
| String | alias | Procedure alias |
| Int32 | order | Parameter order |
| String | binding | Parameter value binding |
| DbType | type | Parameter SQL data type |
| Expression<Func<IProcedureParameterAdapter, IProcedureParameterFlag>>[] | attributes | Parameter attributes |
Returns
| Type | Description |
|---|---|
| IInheritedStructure<T> | Inherited repository structure |
Type Parameters
| Name | Description |
|---|---|
| TResult | Parameter data type |
Procedure(String, String, ProcedureType, Expression<Func<IInnerFilterAdapter, IFilterDescription>>[])
Dynamic repository procedure mapping
Declaration
IInheritedStructure<T> Procedure(string alias, string name, ProcedureType type, params Expression<Func<IInnerFilterAdapter, IFilterDescription>>[] filters)
Parameters
| Type | Name | Description |
|---|---|---|
| String | alias | Procedure alias |
| String | name | Procedure name |
| ProcedureType | type | Procedure type |
| Expression<Func<IInnerFilterAdapter, IFilterDescription>>[] | filters | Filters and links applied to table |
Returns
| Type | Description |
|---|---|
| IInheritedStructure<T> | Inherited repository structure |
See Also
| Improve this Doc View SourceReadOnlyProperty<TResult>(Expression<Func<T, TResult>>, Expression<Func<IRepositoryStructureAdapter<T>, TResult>>)
Dynamic repository read only properties mapping
Declaration
IInheritedStructure<T> ReadOnlyProperty<TResult>(Expression<Func<T, TResult>> property, Expression<Func<IRepositoryStructureAdapter<T>, TResult>> mapper)
Parameters
| Type | Name | Description |
|---|---|---|
| Expression<Func<T, TResult>> | property | Property name expression |
| Expression<Func<IRepositoryStructureAdapter<T>, TResult>> | mapper | Property mapping |
Returns
| Type | Description |
|---|---|
| IInheritedStructure<T> | Inherited repository structure |
Type Parameters
| Name | Description |
|---|---|
| TResult | Property type |
Return(String)
Dynamic repository procedure default result set mapping
Declaration
IInheritedStructure<T> Return(string alias)
Parameters
| Type | Name | Description |
|---|---|---|
| String | alias | Procedure alias |
Returns
| Type | Description |
|---|---|
| IInheritedStructure<T> | Inherited repository structure |
Return<TResult>(String, String, Int32, Expression<Func<IQueryStructureAdapter, T>>)
Dynamic repository procedure result set mapping
Declaration
IInheritedStructure<T> Return<TResult>(string alias, string name, int order, Expression<Func<IQueryStructureAdapter, T>> mapper = null)
where TResult : class
Parameters
| Type | Name | Description |
|---|---|---|
| String | alias | Procedure alias |
| String | name | Result set name |
| Int32 | order | Result set order |
| Expression<Func<IQueryStructureAdapter, T>> | mapper | Result set mapper |
Returns
| Type | Description |
|---|---|
| IInheritedStructure<T> | Inherited repository structure |
Type Parameters
| Name | Description |
|---|---|
| TResult | Result set data type |
SetSubqueryVariables(String, Variable[])
Set subquery variable values
Declaration
IInheritedStructure<T> SetSubqueryVariables(string alias, params Variable[] variables)
Parameters
| Type | Name | Description |
|---|---|---|
| String | alias | Subquery alias |
| Variable[] | variables | Variables to set |
Returns
| Type | Description |
|---|---|
| IInheritedStructure<T> | Inherited repository structure |
Subquery(String, Type, String, DataGrouping, Expression<Func<ISubqueryLinkAdapter<T>, IFilterDescription>>[])
Dynamic repository subquery mapping
Declaration
IInheritedStructure<T> Subquery(string alias, Type subqueryType, string property, DataGrouping grouping = DataGrouping.None, params Expression<Func<ISubqueryLinkAdapter<T>, IFilterDescription>>[] filters)
Parameters
| Type | Name | Description |
|---|---|---|
| String | alias | Subquery alias |
| Type | subqueryType | Subquery statically mapped type |
| String | property | Subquery selected property |
| DataGrouping | grouping | Subquery selected property aggregate function |
| Expression<Func<ISubqueryLinkAdapter<T>, IFilterDescription>>[] | filters | Filters and links applied to subquery |
Returns
| Type | Description |
|---|---|
| IInheritedStructure<T> | Inherited repository structure |
See Also
| Improve this Doc View SourceSubquery<TSubquery>(String, Expression<Func<TSubquery, Object>>, DataGrouping, Expression<Func<ISubqueryLinkAdapter<T, TSubquery>, IFilterDescription>>[])
Dynamic repository subquery mapping
Declaration
IInheritedStructure<T> Subquery<TSubquery>(string alias, Expression<Func<TSubquery, object>> property, DataGrouping grouping = DataGrouping.None, params Expression<Func<ISubqueryLinkAdapter<T, TSubquery>, IFilterDescription>>[] filters)
where TSubquery : class
Parameters
| Type | Name | Description |
|---|---|---|
| String | alias | Subquery alias |
| Expression<Func<TSubquery, Object>> | property | Subquery selected property expression |
| DataGrouping | grouping | Subquery selected property aggregate function |
| Expression<Func<ISubqueryLinkAdapter<T, TSubquery>, IFilterDescription>>[] | filters | Filters and links applied to subquery |
Returns
| Type | Description |
|---|---|
| IInheritedStructure<T> | Inherited repository structure |
Type Parameters
| Name | Description |
|---|---|
| TSubquery | Subquery statically mapped type |
See Also
| Improve this Doc View SourceSubquery<TSubquery>(String, Expression<Func<TSubquery, Object>>, DataGrouping, Variable[], Expression<Func<ISubqueryLinkAdapter<T, TSubquery>, IFilterDescription>>[])
Dynamic repository subquery mapping
Declaration
IInheritedStructure<T> Subquery<TSubquery>(string alias, Expression<Func<TSubquery, object>> property, DataGrouping grouping, Variable[] variables, params Expression<Func<ISubqueryLinkAdapter<T, TSubquery>, IFilterDescription>>[] filters)
where TSubquery : class
Parameters
| Type | Name | Description |
|---|---|---|
| String | alias | Subquery alias |
| Expression<Func<TSubquery, Object>> | property | Subquery selected property expression |
| DataGrouping | grouping | Subquery selected property aggregate function |
| Variable[] | variables | Subquery variables |
| Expression<Func<ISubqueryLinkAdapter<T, TSubquery>, IFilterDescription>>[] | filters | Filters and links applied to subquery |
Returns
| Type | Description |
|---|---|
| IInheritedStructure<T> | Inherited repository structure |
Type Parameters
| Name | Description |
|---|---|
| TSubquery | Subquery statically mapped type |
See Also
Subquery<TSubquery>(String, IQueryDescription<TSubquery>, String, DataGrouping, Expression<Func<ISubqueryLinkAdapter<T, TSubquery>, IFilterDescription>>[])
Dynamic repository subquery mapping
Declaration
IInheritedStructure<T> Subquery<TSubquery>(string alias, IQueryDescription<TSubquery> sub, string property, DataGrouping grouping = DataGrouping.None, params Expression<Func<ISubqueryLinkAdapter<T, TSubquery>, IFilterDescription>>[] filters)
where TSubquery : class
Parameters
| Type | Name | Description |
|---|---|---|
| String | alias | Subquery alias |
| IQueryDescription<TSubquery> | sub | Subquery query structure |
| String | property | Subquery selected property |
| DataGrouping | grouping | Subquery selected property aggregate function |
| Expression<Func<ISubqueryLinkAdapter<T, TSubquery>, IFilterDescription>>[] | filters | Filters and links applied to subquery |
Returns
| Type | Description |
|---|---|
| IInheritedStructure<T> | Inherited repository structure |
Type Parameters
| Name | Description |
|---|---|
| TSubquery |
See Also
With<TRoot>(String, IQueryDescription<TRoot>, Expression<Func<IQueryWithAdapter<TRoot>, IQueryWithFlag>>[])
Dynamic repository Common-Table-Expression (WITH) subquery mapping
Declaration
IInheritedStructure<T> With<TRoot>(string alias, IQueryDescription<TRoot> sub, params Expression<Func<IQueryWithAdapter<TRoot>, IQueryWithFlag>>[] attributes)
where TRoot : class
Parameters
| Type | Name | Description |
|---|---|---|
| String | alias | Common-Table-Expression (WITH) subquery alias |
| IQueryDescription<TRoot> | sub | Common-Table-Expression (WITH) initial subquery description |
| Expression<Func<IQueryWithAdapter<TRoot>, IQueryWithFlag>>[] | attributes | Common-Table-Expression (WITH) attributes |
Returns
| Type | Description |
|---|---|
| IInheritedStructure<T> | Inherited repository structure |
Type Parameters
| Name | Description |
|---|---|
| TRoot | Common-Table-Expression (WITH) initial subquery mapped type |