Does anyone know Id column is a required field if I want to add my custom table to Nop?
for example,
AreaCode, Title
02 Sydney
03 Melborne ......
But it keeps saying ID column is missing. Areacode is a primary key field.
Thanks
--------------------------------------------------------------------------------
1. in Doamin
namespace Nop.Core.Domain.Common
{
public class PhoneAreacode : BaseEntity, ICloneable
{
public virtual string Areacode { get; set; }
public virtual string Title { get; set; }
public object Clone()
{
var areacode = new PhoneAreacode()
{
Areacode = this.Areacode,
Title = this.Title,
};
return areacode;
}
}
}
2. in Data Mapping
namespace Nop.Data.Mapping.Common
{
class PhoneAreacodeMap : EntityTypeConfiguration<PhoneAreacode>
{
public PhoneAreacodeMap()
{
this.ToTable("JnJ_PhoneAreacode");
this.HasKey(a => a.Areacode);
}
}
}
3. Service
namespace Nop.Services.Common
{
public class PhoneAreacodeService: IPhoneAreacodeService
{
private readonly IRepository<Nop.Core.Domain.Common.PhoneAreacode> _phoneAreacodeRepository;
public PhoneAreacodeService(IRepository<Nop.Core.Domain.Common.PhoneAreacode> phoneAreacodeRepository)
{
_phoneAreacodeRepository = phoneAreacodeRepository;
}
public List<Nop.Core.Domain.Common.PhoneAreacode> GetAllAreacodes()
{
return _phoneAreacodeRepository.Table.ToList();
}
}
}
namespace Nop.Services.Common
{
public interface IPhoneAreacodeService
{
List<Nop.Core.Domain.Common.PhoneAreacode> GetAllAreacodes();
}
}