Доступ к пользовательским свойствам базовой модели nop из идентификатора продукта в nopCommerce - PullRequest
0 голосов
/ 29 марта 2019

Я пытаюсь получить доступ к пользовательским свойствам продукта, которые я выбрал, по идентификатору продукта, но я действительно не знаю, как это сделать.

Так что, если я получу продукт следующим образом:

var product = _productService.GetProductByIds(productId);

Я бы хотел получить доступ к этим свойствам с помощью оператора if:

product.CustomProperties.Keys.Contains("Popular")   

Не могу найти что-нибудь по этому вопросу, может кто-нибудь помочь?

1 Ответ

0 голосов
/ 29 марта 2019

Прежде всего, GetProductById s возвращает список продуктов, и, возможно, вы намереваетесь получить только один продукт. Таким образом, вместо этого используйте GetProductById.

Кроме того, внутри модели продукта нет ничего похожего на "Популярное" , возможно, вы бы добавили пользовательский.

Наконец, я предполагаю, что вы хотели бы проверить, существует ли свойство в модели продукта или нет! это можно сделать следующим образом:

var product = _productService.GetProductById(productId);
var productProperty =  product.GetType().GetProperty("Sku");
if(productProperty != null)
{
    //exists
}
else
{
    //doesn't exists
} 
...