Code Generator WPF User Interface

XCodeGenerator.jpg

Code Generator Command Line Interface

Sample

IXGenerator xGenerator = new XGenerator();

// meta informations like file name, base class or required interfaces
IFileMetaInfo interfaceInfo = new FileMetaInfo("ILibrary.cs", @"C:\", "XSerializer.UnitTests.Sample", "");
IFileMetaInfo codeInfo = new FileMetaInfo("Library.cs", @"C:\", "XSerializer.UnitTests.Sample", "BaseClass");

// add file (with meta infos) to generator
xGenerator.AddFile("Library.xsd", interfaceInfo, codeInfo);

// start generation
xGenerator.Start();

//save files
xGenerator.Save();

Settings

    public interface IFileMetaInfo
    {
        /// <summary>
        /// Name of the File
        /// </summary>
        string Name { get; set; }

        /// <summary>
        /// Location of the File
        /// </summary>
        string Directory { get; set; }

        /// <summary>
        /// File NameSpace
        /// </summary>
        string NameSpace { get; set; }

        /// <summary>
        /// List of optional usings declarations
        /// </summary>
        IList<string> Usings { get; set; }

        /// <summary>
        /// List of optional interface declarations
        /// </summary>
        IList<string> Interfaces { get; set; } 

        /// <summary>
        /// Optional base declaration
        /// </summary>
        string BaseItem { get; set; }

        /// <summary>
        /// Generated "RaisePropertyChanged("PropertyName");" in Property setter
        /// </summary>
        bool GeneratedRaisePropertyChanged { get; set; }

        /// <summary>
        /// Generated "protected override void Dispose(bool disposing)" in class
        /// </summary>
        bool GeneratedDisposeMethod { get; set; }
    }

Generated Code Compare

Generated Classes Compare