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! )