45 lines
966 B
C#
45 lines
966 B
C#
using Nop.Core;
|
|
|
|
namespace Mango.Nop.Core.Dtos;
|
|
|
|
public abstract class ModelDtoBase : IModelDtoBase
|
|
{
|
|
public int Id { get; set; }
|
|
|
|
protected ModelDtoBase(){}
|
|
protected ModelDtoBase(int id) => Id = id;
|
|
}
|
|
|
|
public abstract class ModelDtoBase<TMainEntity> : ModelDtoBase, IModelDtoBase<TMainEntity> where TMainEntity : BaseEntity
|
|
{
|
|
protected ModelDtoBase() : base()
|
|
{
|
|
}
|
|
|
|
protected ModelDtoBase(int id) : base(id)
|
|
{
|
|
}
|
|
|
|
protected ModelDtoBase(TMainEntity mainEntity)
|
|
{
|
|
CopyEntityValuesToDto(mainEntity);
|
|
}
|
|
|
|
public virtual TMainEntity CreateMainEntity()
|
|
{
|
|
var mainEntity = Activator.CreateInstance<TMainEntity>();
|
|
CopyDtoValuesToEntity(mainEntity);
|
|
|
|
return mainEntity;
|
|
}
|
|
|
|
public virtual void CopyDtoValuesToEntity(TMainEntity entity)
|
|
{
|
|
entity.Id = Id;
|
|
}
|
|
|
|
public virtual void CopyEntityValuesToDto(TMainEntity entity)
|
|
{
|
|
Id = entity.Id;
|
|
}
|
|
} |