private static SiteMapNode ToModel( SiteMapNodeEditInput input ) { return Mapper.Map<SiteMapNodeEditInput, SiteMapNode>( input ); }
private SiteMapNodeEditDisplay ToEditDisplay( SiteMapNodeEditInput input ) { return Mapper.Map<SiteMapNodeEditInput, SiteMapNodeEditDisplay>( input ); }
public virtual ActionResult Edit( SiteMapNodeEditInput input ) { if ( ModelState.IsValid ) { try { SiteMapNode model = ToModel( input ); if ( input.PreviousSiblingId.HasValue ) { SiteMapNodeService.UpdateAndPositionAfterNode( model, input.PreviousSiblingId.Value ); } else { SiteMapNodeService.UpdateAndPositionUnderNode( model, input.ParentId ); } return this.RedirectToAction( x => x.Index() ); } catch /*( Exception ex )*/ { // todo log and display error and remove throw throw; } } SiteMapNodeEditDisplay display = ToEditDisplay( input ); PopulateEditDisplay( display ); return View( display ); }