Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.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
Asp.net Linq查询,选择内部查询进入列表?_Asp.net_Linq_Linq To Sql - Fatal编程技术网

Asp.net Linq查询,选择内部查询进入列表?

Asp.net Linq查询,选择内部查询进入列表?,asp.net,linq,linq-to-sql,Asp.net,Linq,Linq To Sql,我正在写一个linq查询来选择一篇博客文章 from data in dataContext.Blog_BlogPosts join tagsData in dataContext.Blog_TagToPostConnections on data.BlogPostID equals tagsData.BlogPostID where data.Slug == "asp-programmering" select new BlogPost

我正在写一个linq查询来选择一篇博客文章

    from data in dataContext.Blog_BlogPosts
        join tagsData in dataContext.Blog_TagToPostConnections on data.BlogPostID equals tagsData.BlogPostID
        where data.Slug == "asp-programmering"
        select new BlogPost
        {
            Title = data.Title,
            Slug = data.Slug,
            Author = data.Author,
            Text = data.Text,
            Tags = (from tags in dataContext.Blog_Tags where tags.TagID == tagsData.TagID select new Tag { TagID = tags.TagID, TagName = tags.Tag }).ToList()
        };
blogpost类如下所示(用于测试它)

公共类BlogPost
{
公共字符串Slug{get;set;}
公共字符串标题{get;set;}
公共字符串文本{get;set;}
公共字符串作者{get;set;}
发布的公共日期时间{get;set;}
公共列表标记{get;set;}
}
我正在测试的博客帖子附带了3个标签。表格结构为:


(table)BlogPost->(table)BlogPostTags这是因为您在外部表达式中加入了
Blog\u TagToPostConnections
。由于有三个匹配的标记,因此联接将生成三个结果项。将联接移动到指定给
标记的表达式中(这是要弹出三个内容的地方)


这是因为您在外部表达式中加入了
Blog\u TagToPostConnections
。由于有三个匹配的标记,因此联接将生成三个结果项。将联接移动到指定给
标记的表达式中(这是要弹出三个内容的地方)

    public class BlogPost
    {
        public string Slug { get; set; }
        public string Title { get; set; }
        public string Text { get; set; }
        public string Author { get; set; }
        public DateTime Published { get; set; }
        public List<Tag> Tags { get; set; }
    }
from data in dataContext.Blog_BlogPosts
    where data.Slug == "asp-programmering"
    select new BlogPost
    {
        Title = data.Title,
        Slug = data.Slug,
        Author = data.Author,
        Text = data.Text,
        Tags = (from tags in dataContext.Blog_Tags
                join tagsData in dataContext.Blog_TagToPostConnections
                     on tags.TagID equals tagsData.TagID
                where data.BlogPostID == tagsData.BlogPostID
                select new Tag { TagID = tags.TagID, TagName = tags.Tag }
               ).ToList()
    };