Browse Source

make Title and Url setters protected and expose Set method to handle validation.

pull/7746/head
Ilkay Ilknur 6 years ago
parent
commit
b6aced7866
  1. 4
      modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Pages/PageAdminAppService.cs
  2. 32
      modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Pages/Page.cs

4
modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Pages/PageAdminAppService.cs

@ -66,8 +66,8 @@ namespace Volo.CmsKit.Admin.Pages
await CheckPageUrlAsync(input.Url);
}
page.Title = input.Title;
page.Url = input.Url;
page.SetTitle(input.Title);
page.SetUrl(input.Url);
page.Description = input.Description;
await PageRepository.UpdateAsync(page);

32
modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Pages/Page.cs

@ -8,26 +8,36 @@ namespace Volo.CmsKit.Pages
{
public class Page : FullAuditedAggregateRoot<Guid>, IMultiTenant
{
public Guid? TenantId { get; set; }
[CanBeNull] public virtual Guid? TenantId { get; set; }
public virtual string Title { get; set; }
[NotNull] public virtual string Title { get; protected set; }
[NotNull] public virtual string Url { get; protected set; }
[CanBeNull] public virtual string Description { get; set; }
public virtual string Url { get; set; }
public virtual string Description { get; set; }
protected Page()
{
}
public Page(Guid id, [NotNull] string title, [NotNull] string url, [CanBeNull] string description = null, Guid? tenantId = null) : base(id)
public Page(Guid id, [NotNull] string title, [NotNull] string url, [CanBeNull] string description = null,
Guid? tenantId = null) : base(id)
{
Title = Check.NotNullOrWhiteSpace(title, nameof(title), PageConsts.MaxTitleLength);
Url = Check.NotNullOrWhiteSpace(url, nameof(url), PageConsts.MaxUrlLength);
Title = Check.NotNullOrEmpty(title, nameof(title), PageConsts.MaxTitleLength);
Url = Check.NotNullOrEmpty(url, nameof(url), PageConsts.MaxUrlLength);
Description = Check.Length(description, nameof(description), PageConsts.MaxDescriptionLength);
TenantId = tenantId;
}
public virtual void SetTitle(string title)
{
Title = Check.NotNullOrEmpty(title, nameof(title), PageConsts.MaxTitleLength);
}
public virtual void SetUrl(string url)
{
Url = Check.NotNullOrEmpty(url, nameof(url), PageConsts.MaxUrlLength);
}
}
}
Loading…
Cancel
Save