diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/CreatePageInputDto.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/CreatePageInputDto.cs index b23151ce75..a62ede1f05 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/CreatePageInputDto.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/CreatePageInputDto.cs @@ -17,7 +17,6 @@ public class CreatePageInputDto: ExtensibleObject [DynamicMaxLength(typeof(PageConsts), nameof(PageConsts.MaxSlugLength))] public string Slug { get; set; } - [Required] [DynamicMaxLength(typeof(PageConsts), nameof(PageConsts.MaxLayoutNameLength))] public string LayoutName { get; set; } diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/UpdatePageInputDto.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/UpdatePageInputDto.cs index 9ea7f9c37a..9e47ce54f0 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/UpdatePageInputDto.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/UpdatePageInputDto.cs @@ -18,7 +18,6 @@ public class UpdatePageInputDto : ExtensibleObject, IHasConcurrencyStamp [DynamicMaxLength(typeof(PageConsts), nameof(PageConsts.MaxSlugLength))] public string Slug { get; set; } - [Required] [DynamicMaxLength(typeof(PageConsts), nameof(PageConsts.MaxLayoutNameLength))] public string LayoutName { get; set; } diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Pages/Page.cs b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Pages/Page.cs index f12f192126..b1f611abc6 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Pages/Page.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Pages/Page.cs @@ -78,7 +78,7 @@ public class Page : FullAuditedAggregateRoot, IMultiTenant, IHasEntityVers public virtual void SetLayoutName(string layoutName) { - LayoutName = Check.NotNullOrEmpty(layoutName, nameof(layoutName), PageConsts.MaxLayoutNameLength); + LayoutName = Check.Length(layoutName, nameof(layoutName), PageConsts.MaxLayoutNameLength); } internal void SetIsHomePage(bool isHomePage) diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Layouts/LayoutExtensions.cs b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Layouts/LayoutExtensions.cs index ada56994a0..5916db2a3e 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Layouts/LayoutExtensions.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Layouts/LayoutExtensions.cs @@ -15,8 +15,8 @@ public static class LayoutExtensions public static string GetLayoutByKey(this ITheme theme, string layoutKey) { - return LayoutFunctions.TryGetValue(layoutKey, out var layoutFunc) - ? layoutFunc(theme) - : theme.GetApplicationLayout(); // Application layout is the default + return !string.IsNullOrWhiteSpace(layoutKey) && LayoutFunctions.TryGetValue(layoutKey, out var layoutFunc) + ? layoutFunc(theme) + : theme.GetApplicationLayout(); // Application layout is the default } } \ No newline at end of file