Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# LinQ显式问题_C#_Linq - Fatal编程技术网

C# LinQ显式问题

C# LinQ显式问题,c#,linq,C#,Linq,后续行动 当前代码: var query = from b in books select new { Title = b.Title, StockAvailable = bookexamples.Count(be => be.BookID == b.BookID &&

后续行动

当前代码:

var query = from b in books
             select new
             {
                 Title = b.Title,
                 StockAvailable = bookexamples.Count(be => 
                         be.BookID == b.BookID && 
                         be.OrderDetailID == null
                     )
             };
目标:
query
替换为应包含LINQ查询中强类型数据的
IEnumerable

public class test
{
    public string Title { get; set; }
    public List<int> StockAvailable { get; set; }
}
公共类测试
{
公共字符串标题{get;set;}
公共列表可用{get;set;}
}
问题:
收到错误消息:

错误1无法隐式转换类型
“System.Collections.Generic.IEnumerable”
“System.Collections.Generic.IEnumerable”
。 存在一个显式转换(您是吗 缺少演员阵容?)

问题:
我应该如何解决这个问题


//Fullmetalboy

您需要修改查询以返回
test
对象(当前,它正在返回anomynous对象)

您需要调整
StockAvailable
以表示
int
,因为
Count
返回int


另外,请注意,C#中的类名在开头用大写字母书写。

您需要修改查询以返回
test
对象(当前,它返回的是不连续的对象)

您需要调整
StockAvailable
以表示
int
,因为
Count
返回int


另外,请注意,C#中的类名在开头用大写字母书写。

按照惯例,而不是按照规则,C#中的类名用大写字母书写。没有什么强迫你这样做,但仍然是很好的建议。@FullmetalBoy和@Femaref:在原始答案中编写了代码之后,我同意根据你的新要求进行的修改。我当然会这么做+1.谢谢大家的帮助!那里有没有一本书或一个网站,我可以读到更多关于c#的经验法则,例如“类名是用c#的大写字母写的”?类名是用c#的大写字母写的,按惯例而不是按规则写的。没有什么强迫你这样做,但仍然是很好的建议。@FullmetalBoy和@Femaref:在原始答案中编写了代码之后,我同意根据你的新要求进行的修改。我当然会这么做+1.谢谢大家的帮助!有没有关于c#的经验法则的书或网站,我可以读得更多?例如“用c#写的类名是大写字母”?编辑是为了澄清我认为你想问的问题。编辑是为了澄清我认为你想问的问题。
var query = from b in books
            select new test()
            {
                Title = b.Title,
                StockAvailable = bookexamples.Count(be => 
                        be.BookID == b.BookID && 
                        be.OrderDetailID == null
                    )
            };