Share via


ODataModelBuilder Class

 

Represents a model builder that is used to map CLR classes to an EDM model.

Namespace:   System.Web.OData.Builder
Assembly:  System.Web.OData (in System.Web.OData.dll)

Inheritance Hierarchy

System.Object
  System.Web.OData.Builder.ODataModelBuilder
    System.Web.OData.Builder.ODataConventionModelBuilder

Syntax

public class ODataModelBuilder
public ref class ODataModelBuilder 
type ODataModelBuilder = class end
Public Class ODataModelBuilder

Constructors

Name Description
System_CAPS_pubmethod ODataModelBuilder()

Initializes a new instance of the ODataModelBuilder class.

Properties

Name Description
System_CAPS_pubproperty ContainerName

Gets or sets the name of the container that will hold all the navigation sources, actions and functions

System_CAPS_pubproperty DataServiceVersion

Gets or sets the data service version of the model. The default value is 4.0.

System_CAPS_pubproperty EntitySets

Gets the collection of EDM entity sets in the model to be built.

System_CAPS_pubproperty EnumTypes

Gets the collection of EDM types in the model to be built.

System_CAPS_pubproperty MaxDataServiceVersion

Gets or sets the maximum data service version of the model. The default value is 4.0.

System_CAPS_pubproperty Namespace

Gets or sets the namespace that will be used for the resulting model

System_CAPS_pubproperty NavigationSources

Gets the collection of EDM navigation sources (entity sets and singletons) in the model to be built.

System_CAPS_pubproperty Procedures

Gets the collection of Procedures (i.e. Actions, Functions and ServiceOperations) in the model to be built.

System_CAPS_pubproperty Singletons

Gets the collection of EDM singletons in the model to be built.

System_CAPS_pubproperty StructuralTypes

Gets the collection of EDM types in the model to be built.

Methods

Name Description
System_CAPS_pubmethod Action(String)

Adds an unbound action to the builder.

System_CAPS_pubmethod AddComplexType(Type)

Registers an complex type as part of the model and returns an object that can be used to configure the entity. This method can be called multiple times for the same entity to perform multiple lines of configuration.

System_CAPS_pubmethod AddEntitySet(String, EntityTypeConfiguration)

Registers an entity set as a part of the model and returns an object that can be used to configure the entity set. This method can be called multiple times for the same type to perform multiple lines of configuration.

System_CAPS_pubmethod AddEntityType(Type)

Registers an entity type as part of the model and returns an object that can be used to configure the entity. This method can be called multiple times for the same entity to perform multiple lines of configuration.

System_CAPS_pubmethod AddEnumType(Type)

Registers an enum type as part of the model and returns an object that can be used to configure the enum type.

System_CAPS_pubmethod AddProcedure(ProcedureConfiguration)

Adds a procedure to the model.

System_CAPS_pubmethod AddSingleton(String, EntityTypeConfiguration)

Registers a singleton as a part of the model and returns an object that can be used to configure the singleton. This method can be called multiple times for the same type to perform multiple lines of configuration.

System_CAPS_pubmethod ComplexType<TComplexType>()

Registers a type as a complex type in the model and returns an object that can be used to configure the complex type. This method can be called multiple times for the same type to perform multiple lines of configuration.

System_CAPS_pubmethod EntitySet<TEntityType>(String)

Registers an entity set as a part of the model and returns an object that can be used to configure the entity set. This method can be called multiple times for the same type to perform multiple lines of configuration.

System_CAPS_pubmethod EntityType<TEntityType>()

Registers an entity type as part of the model and returns an object that can be used to configure the entity type. This method can be called multiple times for the same entity to perform multiple lines of configuration.

System_CAPS_pubmethod EnumType<TEnumType>()

Registers an enum type as part of the model and returns an object that can be used to configure the enum.

System_CAPS_pubmethod Equals(Object)

(Inherited from Object.)

System_CAPS_protmethod Finalize()

(Inherited from Object.)

System_CAPS_pubmethod Function(String)

Adds an unbound function to the builder.

System_CAPS_pubmethod GetEdmModel()

Creates a IEdmModel based on the configuration performed using this builder.

System_CAPS_pubmethod GetHashCode()

(Inherited from Object.)

System_CAPS_pubmethod GetType()

(Inherited from Object.)

System_CAPS_pubmethod GetTypeConfigurationOrNull(Type)

Attempts to find a pre-configured structural type or a primitive type or an enum type that matches the T. If no matches are found NULL is returned.

System_CAPS_protmethod MemberwiseClone()

(Inherited from Object.)

System_CAPS_pubmethod RemoveEntitySet(String)

Removes the entity set from the model.

System_CAPS_pubmethod RemoveEnumType(Type)

Removes the type from the model.

System_CAPS_pubmethod RemoveProcedure(ProcedureConfiguration)

Remove the procedure from the model

System_CAPS_pubmethod RemoveProcedure(String)

Remove the procedure from the model

Remarks

If there is more than one procedure with the name specified this method will not work. You need to use the other RemoveProcedure(..) overload instead.

System_CAPS_pubmethod RemoveSingleton(String)

Removes the singleton from the model.

System_CAPS_pubmethod RemoveStructuralType(Type)

Removes the type from the model.

System_CAPS_pubmethod Singleton<TEntityType>(String)

Registers a singleton as a part of the model and returns an object that can be used to configure the singleton. This method can be called multiple times for the same type to perform multiple lines of configuration.

System_CAPS_pubmethod ToString()

(Inherited from Object.)

System_CAPS_pubmethod ValidateModel(IEdmModel)

Validates the IEdmModel that is being created.

Remarks

Gets the collection of EDM types in the model to be built.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

See Also

System.Web.OData.Builder Namespace

Return to top