public override void Generate() { foreach (var table in GetList()) { var template = new EntityGeneratedTemplate(_model, table); var fullParentName = RELATIVE_OUTPUT_LOCATION + template.ParentItemName; var eventArgs = new ProjectItemGeneratedEventArgs(template.FileName, template.FileContent, ProjectName, fullParentName, this, true); OnProjectItemGenerated(this, eventArgs); } //Process deleted items foreach (var name in _model.RemovedTables) { var fullFileName = RELATIVE_OUTPUT_LOCATION + string.Format("I{0}.Generated.cs", name); var eventArgs = new ProjectItemDeletedEventArgs(fullFileName, ProjectName, this); OnProjectItemDeleted(this, eventArgs); } var gcEventArgs = new ProjectItemGenerationCompleteEventArgs(this); OnGenerationComplete(this, gcEventArgs); }