Я работаю над this website в Umbraco 7. Моя проблема заключается в фильтрации «gender» на левой стороне, которая является bool
(queryString). Этот bool устанавливается для каждого продукта как «Является ли этот продукт для мужчины?» - «Истина или ложь»).Bool property show True & False items
- Все пол = ничего
- Мужчина = & пол = истинный
- Женщина = & пол = ложный
По умолчанию он установлен в положение "Все пол", но в коде, это фактически установлен на true
, как вы можете видеть в моем коде. Я хотел бы одновременно показывать как true
, так и false
.
bool isMale = true
должно быть чем-то вроде isMale = true && false
, если бы это имело смысл.
<div id="categoryCollection">
@{
bool isMale = true;
}
@if (!string.IsNullOrEmpty(selectedpriceRange) && selectedpriceRange.Contains("-"))
{
string[] priceArray = selectedpriceRange.Split('-');
int minPrice = 0;
int maxPrice = 0;
if (queryString.Get("gender") != null)
{
isMale = bool.Parse(queryString.Get("gender"));
}
if (priceArray.Count() == 2 && int.TryParse(priceArray[0], out minPrice) && int.TryParse(priceArray[1], out maxPrice))
{
selectedItems.AddRange(productTypes
.Where(x => x.HasValue("price") &&
x.GetPropertyValue<int>("price") > minPrice &&
x.GetPropertyValue<int>("price") < maxPrice &&
x.HasValue("gender") &&
x.GetPropertyValue<bool>("gender") == isMale)
.Skip((page - 1) * pageSize).Take(pageSize));
foreach (var item in selectedItems.Skip((page - 1) * pageSize).Take(pageSize))
{
/* If pricerange is selected */
@buildItemProduct(item);
}
}
}
else
{
if (queryString.Get("gender") != null)
{
isMale = bool.Parse(queryString.Get("gender"));
}
selectedItems.AddRange(productTypes.Where(x => x.HasValue("gender") && x.GetPropertyValue<bool>("gender") == isMale));
foreach (var item in selectedItems.Skip((page - 1) * pageSize).Take(pageSize))
{
/* If pricerange is selected */
@buildItemProduct(item);
}
}
</div>
Если вы хотите, чтобы увидеть весь мой код, который вы можете увидеть его here.
Я не знаю, как объявить «isMale», чтобы одновременно показывать как истинные, так и ложные продукты.
Это звучит как задание для перечисления или, по крайней мере, с нулевым значением bool. – adv12
Дело в том, что пока мне не очень удобно в этом коде. Если у вас есть пример того, как это будет работать, я буду очень счастлив! –
у вас есть 3 корпуса - мужчина и женщина - мужчина - женщина. поэтому, вы должны проверить каждый случай отдельно. ложных или истинных утверждений недостаточно для установки фильтра. если бы это было так, вы могли бы фильтровать только мужчина или женщина. думать о. это – Badiparmagi