protected override Task OnInitializeAsync() { if (Request.Query.TryGetValue("baseType", out string baseTypeName)) { if (!contentMetadataManager.TryGetMetadata(baseTypeName, out contentMetadataProvider)) { AddErrors("Not found content type."); return(Task.CompletedTask); } } return(Task.CompletedTask); }
public void TryGetMetadata() { var contentType = typeof(TestPageContent); var contentMetadata = metadataManager.GetMetadata(contentType); Assert.True(metadataManager.TryGetMetadata(contentType, out ContentMetadataProvider contentMetadata2)); Assert.Equal(contentMetadata, contentMetadata2); }
public static bool TryGetMetadata(this IContentMetadataManager contentMetadataManager, object model, out ContentMetadataProvider contentMetadataProvider) { if (model == null) { throw new ArgumentNullException(nameof(model)); } return(contentMetadataManager.TryGetMetadata(model.GetType(), out contentMetadataProvider)); }
public static ContentMetadataProvider GetMetadataByModelData(this IContentMetadataManager contentMetadataManager, IDictionary <string, object> modelData) { if (modelData == null) { throw new ArgumentNullException(nameof(modelData)); } if (!modelData.TryGetValue(ContentMetadataProvider.ContentTypeNameDataKey, out object typeNameValue)) { return(null); } contentMetadataManager.TryGetMetadata((string)typeNameValue, out ContentMetadataProvider contentMetadata); return(contentMetadata); }
public static void ApplyInjections(this IContentMetadataManager contentMetadataManager, object model, IServiceProvider serviceProvider, bool injectInnerModels) { if (model == null) { throw new ArgumentNullException(nameof(model)); } if (serviceProvider == null) { throw new ArgumentNullException(nameof(serviceProvider)); } if (!contentMetadataManager.TryGetMetadata(model, out ContentMetadataProvider contentMetadataProvider)) { throw new ArgumentException(); } contentMetadataProvider.ApplyInjections(model, serviceProvider, injectInnerModels); }