public InfoItemViewModel(INestedContentContext <InfoItem> context) { Image = context.NestedContent.Image.ToViewModel(); Title = context.NestedContent.Title; Description = context.NestedContent.Description; Link = context.NestedContent.Link.AsViewModel(); }
private static TBaseViewModel AsViewModel <TBaseViewModel>(this INestedContentContext <INestedContent> nestedContentContext, string classSuffix = "ViewModel") where TBaseViewModel : INestedContentViewModel { if (nestedContentContext == null) { return(default(TBaseViewModel)); } Type baseType = typeof(TBaseViewModel); string modelTypeName = $"{baseType.Namespace}.{nestedContentContext.NestedContent.GetType().Name}{classSuffix}"; return((TBaseViewModel)Activator.CreateInstance(Assembly.GetAssembly(baseType).GetType(modelTypeName), nestedContentContext)); }
public BannerWidgetViewModel(INestedContentContext <BannerWidget> context) { Items = context.NestedContent.Items .Select(x => x.AsViewModelWithNestedContentContext <BannerItemViewModel>(context.PageContext)); }
public BannerItemViewModel(INestedContentContext <BannerItem> context) { Title = context.NestedContent.Title; Link = context.NestedContent.Link.AsViewModel(); Background = context.NestedContent.Background.ToViewModel(); }
public TextWidgetViewModel(INestedContentContext <TextWidget> context) { Text = context.NestedContent.Text; DelimiterImage = context.NestedContent.DelimiterImage.ToViewModel(); }