IModelConversionExtension Interface

Exposes methods for converting a custom file format to and from the .edmx file format that is readable by the Entity Data Model Designer.

Namespace:  Microsoft.Data.Entity.Design.Extensibility
Assembly:  Microsoft.Data.Entity.Design.Extensibility (in Microsoft.Data.Entity.Design.Extensibility.dll)

public interface IModelConversionExtension

The IModelConversionExtension type exposes the following members.

Public methodOnAfterFileLoadedDefines custom functionality for loading a file with a custom format and converting it to an .edmx format.
Public methodOnBeforeFileSavedDefines custom functionality for converting an .edmx file to a file with a custom format before the file is saved.

The IModelConversionExtension interface exposes methods for extending the functionality of the Entity Data Model Designer (Entity Designer). Specifically, the OnAfterFileLoaded and OnBeforeFileSaved methods allow you to load and save custom file formats with the Entity Designer. The Microsoft.Data.Entity.Design.Extensibility.ModelFileExtensionAttribute is used to annotate classes that implement the Microsoft.Data.Entity.Design.Extensibility.IModelConversionExtension interface. The Microsoft.Data.Entity.Design.Extensibility.ModelFileExtensionAttribute constructor accepts a string parameter that specifies the file extension for custom files that can be loaded and saved by the Entity Designer.

The scope of these methods is limited to converting between custom file formats and the .edmx file format. To customize an .edmx file before it is displayed in the Entity Designer or before it is saved, see Microsoft.Data.Entity.Design.Extensibility.IModelTransformExtension.


An implementation of IModelConversionExtension can work with only one type of custom file. Separate implementations are necessary to transform multiple custom file formats. A given installation of Visual Studio can only have one model conversion extension per custom file type.

For more information about extending the functionality of the ADO.NET Entity Data Model Tools, see Extending the Entity Data Model Tools and ADO.NET Entity Data Model Designer Extension Starter Kit.