public IEnumerable <Contracts.IGeneratedItem> CreateBusinessModels() { var result = new List <Contracts.IGeneratedItem>(); var contractsProject = ContractsProject.Create(SolutionProperties); foreach (var type in contractsProject.BusinessTypes) { if (CanCreate(type)) { result.Add(CreateModelFromContract(type, UnitType, Common.ItemType.BusinessModel)); if (ContractHelper.HasOneToMany(type)) { var(one, _) = ContractHelper.GetOneToManyTypes(type); result.Add(CreateDelegateProperties(type, one, StaticLiterals.OneModelName, UnitType, Common.ItemType.BusinessModel)); } result.Add(CreateBusinessModel(type, UnitType)); } } return(result); }
public static IEnumerable <RazorBuilder> CreateGridColumns(Type type) { var result = new List <RazorBuilder>(); var handled = false; BeginCreateGridColumns(type, result, ref handled); if (handled == false) { var createHelper = default(ContractHelper); if (ContractHelper.HasOneToMany(type)) { var(one, _) = ContractHelper.GetOneToManyTypes(type); createHelper = new ContractHelper(one); } else { createHelper = new ContractHelper(type); } foreach (var propertyInfo in createHelper.GetAllProperties() .Where(e => IsPropertyCreatable(e)) .Select(e => new ContractPropertyHelper(e)) .OrderBy(e => e.Order) .Select(e => e.Property)) { var item = CreateGridColumn(propertyInfo); if (item != null) { result.Add(item); } } } EndCreateGridColumns(type, result); return(result); }