Add a new property to Customer

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.
7 năm cách đây
I'm using version 3.8.
I have a new property ClientNumber in Customer.

What is done:

1. New column in dbo.Customer  ClientNumber.

2 In ..\Libraries\Nop.Core\Domain\Customers\Customer.cs:  
   public string ClientNumber { get; set; }

3. In ..>Nop.Admin\Models\Customers\CustomerModel.cs:

   [NopResourceDisplayName(“Admin.Customers.Customers.Fields.ClientNumber”)]
   [AllowHtml]
   public string ClientNumber { get; set; }  

4. In ..\Nop.Admin\Controllers\CustomerController.cs:

    [NonAction]
    protected CustomerModel PrepareCustomerModelForList(Customer customer)
    {
       return new CustomerModel()
        {
           ....
           ClientNumber=customer.ClientNumber;
           .. ..
        }
    }

5.  In   [HttpPost].... Create method :
    var customer = new Customer
                {
      ....                  
                    ClientNumber = model.ClientNumber,
                     ....
                };

6.  In   [HttpPost].... Edit method :

  customer.ClientNumber = model.ClientNumber;

7. In ActionResult Edit(int id):
   model.ClientNumber = customer.ClientNumber;

9.  In ..\Nop.Admin\Administration\Views\Customer\_CreateOrUpdate.cshtml:

    <div class="form-group">
                        <div class="col-md-3">
                            @Html.NopLabelFor(model => model.ClientNumber)
                        </div>
                        <div class="col-md-9">
                            @Html.NopEditorFor(model => model.ClientNumber)
                            
                        </div>
                 </div>


THE PROBLEM:
1. I get an empty column ClientNumber in view of all customers in admin mode.(The column in dbo.Customer has wel data.)

2. By trying to view customer details (..\Presentation\Nop.Web\Administration\Views\Customer\_CreateOrUpdate.cshtml ):

  Compiler Error Message: CS1061:
'Nop.Admin.Models.Customers.CustomerModel' does not contain a definition for 'ClientNumber'
and no extension method 'ClientNumber' accepting a first argument of type
'Nop.Admin.Models.Customers.CustomerModel' could be found
(are you missing a using directive or an assembly reference?)


(   Nop.Admin.Models.Customers.CustomerModel property  ClientNumber   -   see p.3  it was wel done! )
7 năm cách đây
Hi,

It is not an answer for your question, but why you did not use "Custom customer attributes " from settings?

Regards,
Tomasz
7 năm cách đây
Did you build Nop.Admin? Clean build the solution. And over check you process that you have done.
This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.