[转]How to add new table in NopCommerce

本文转自:http://www.tech-coder.com/2015/07/how-to-add-new-table-in-nopcommerce.html

Hey guys I am back after a long time near about 2 year. And hope my previous blogs help's to anyway to my friends.
So I am going to starting with NopCommerce for how to add new table. This is the common question for newbie of NopCommerce.
Basically here sharing my experience with you guys that will help to other.
Step by step explanation for how to add new table on NopCommerce.
Going to explain based on the NopCommerce source code.  

So first open source code on visual studio then follow the below steps (Also refer any existing classes/table).
1. Create the Entity class related to table name (e.g. Enity.cs)      

Path : Solution\Libraries\Nop.Core\Domain\Entity.cs


2. Create a Mapping class which bind class to Database table (e.g. EntityMap.cs)      

Path : Solution\Libraries\Nop.Data\Mapping\EntityMap.cs


3. Create a Model class for MVC (i.e. for Admin or Web) (e.g EntityModel.cs)      

Path : Solution\Presentation\Nop.Web\Models\EntityModel.cs (for Web)      

Path : Solution\Presentation\Nop.Admin\Models\EntityModel.cs (for Admin)


4. Create a validator for model (e.g. EntityValidator.cs)      

Path : Solution\Presentation\Nop.Web\Validators\EntityValidator.cs (for Web)      

Path : Solution\Presentation\Nop.Admin\Validators\EntityValidator.cs (for Admin)


5. Create A Mapping Configuration On AutoMapperStartupTask.cs for Entity and Model      

Path : Solution\Presentation\Nop.Admin\Infrastructure
       Mapping Model to Entity and Entity to Model

        Mapper.CreateMap<MyTest, MyTestModel>()
        .ForMember(dest => dest.Name, mo => mo.Ignore())
        .ForMember(dest => dest.MyTestId, mo => mo.Ignore());
 
        Mapper.CreateMap<MyTestModel, MyTest>()
        .ForMember(dest => dest.Name, mo => mo.Ignore())
        .ForMember(dest => dest.MyTestId, mo => mo.Ignore());


6. Apply Mapping between Model and Entity on MappingExtensions.cs      

Path : Solution\Presentation\Nop.Web\Extensions\(for Web)      

Path : Solution\Presentation\Nop.Admin\Extensions\(for Admin)


7. Create a service class and service interface (e.g EntityService.cs , IEntityService.cs)      

Path : Solution\Libraries\Nop.Services\IEntityService.cs      

Path : Solution\Libraries\Nop.Services\EntityService.cs


8. Final step to create Controller and View for given Model.
Hope you get basic idea how to create/add new table on NopCommerce system

 

posted on 2016-12-13 18:14  freeliver54  阅读(276)  评论(0编辑  收藏  举报

导航