C# 无法在LINQ select期间设置枚举属性
我有以下代码片段C# 无法在LINQ select期间设置枚举属性,c#,mysql,linq,entity-framework-4,google-shopping-api,C#,Mysql,Linq,Entity Framework 4,Google Shopping Api,我有以下代码片段 IQueryable<RssItem> rssItems = from prodotti prodotto in tuttiProdotti join marca in tutteMarche on prodotto.marca equals marca.id where pro
IQueryable<RssItem> rssItems = from prodotti prodotto in tuttiProdotti
join marca in tutteMarche on prodotto.marca equals marca.id
where prodotto.eliminato == 0
orderby prodotto.id ascending
select new GoogleShoppingRssItem
{
Author = AUTHOR,
//Availability = prodotto.disponibilita > 0 ? AvailabilityType.instock : AvailabilityType.outofstock,
//Availability = AvailabilityType.instock,
Title = prodotto.titolo,
};
关于在LINQ select语句中设置enum
属性,我应该知道些什么吗
关于在LINQ select语句中设置enum属性,我应该知道些什么吗
对。EF4不支持枚举,您不能在Linq to Entities查询中使用它们。如果在Linq to Objects查询中使用它们,则应该可以使用它们,因此请尝试以下操作:
IQueryable<RssItem> rssItems = (from prodotto in tuttiProdotti
join marca in tutteMarche on prodotto.marca equals marca.id
where prodotto.eliminato == 0
orderby prodotto.id ascending
select prodotto).ToList() // Now you switched to L2O
.Select(x => new GoogleShoppingRssItem
{
Author = AUTHOR,
Availability = x.disponibilita > 0 ? AvailabilityType.instock : AvailabilityType.outofstock,
Title = x.titolo,
});
IQueryable rssItems=(来自tuttiProdotti中的prodotto)
在prodotto的Tuttemarch中加入marca。marca等于marca.id
其中prodotto.eliminato==0
orderby prodotto.id递增
选择prodotto).ToList()//现在切换到L2O
.选择(x=>new GoogleShoppingRssItem
{
作者,
可用性=x.disponibilita>0?可用性类型.instock:AvailabilityType.outofstock,
Title=x.titolo,
});
关于在LINQ select语句中设置enum属性,我应该知道些什么吗
对。EF4不支持枚举,您不能在Linq to Entities查询中使用它们。如果在Linq to Objects查询中使用它们,则应该可以使用它们,因此请尝试以下操作:
IQueryable<RssItem> rssItems = (from prodotto in tuttiProdotti
join marca in tutteMarche on prodotto.marca equals marca.id
where prodotto.eliminato == 0
orderby prodotto.id ascending
select prodotto).ToList() // Now you switched to L2O
.Select(x => new GoogleShoppingRssItem
{
Author = AUTHOR,
Availability = x.disponibilita > 0 ? AvailabilityType.instock : AvailabilityType.outofstock,
Title = x.titolo,
});
IQueryable rssItems=(来自tuttiProdotti中的prodotto)
在prodotto的Tuttemarch中加入marca。marca等于marca.id
其中prodotto.eliminato==0
orderby prodotto.id递增
选择prodotto).ToList()//现在切换到L2O
.选择(x=>new GoogleShoppingRssItem
{
作者,
可用性=x.disponibilita>0?可用性类型.instock:AvailabilityType.outofstock,
Title=x.titolo,
});
您要设置的可用性成员是整数还是可用性类型枚举?另外,当使用prodotto.disponibilita时,在检查>0时,您需要使用prodotto.disponibilita.Value。可用性类型为AvailabilityTypeAvailabilityTypeAvailabilityTypeAvailabilityMember您要设置的是整数还是AvailabilityTypeEnum?此外,当使用prodotto.disponibilita时,在检查>0时,需要使用prodotto.disponibilita.Value。可用性为AvailabilityType类型