C#LINQ标签云

Miz*_*iaQ 1 c# linq linq-to-sql

我正在尝试使用LINQ在C#中创建标签云.我之前从未使用过LINQ,因此我遇到了许多语法错误.有人可以帮我修改我的代码吗?在此先感谢您的帮助!

private void BindTagCloud()
{



var tagSummary = from af in db.AgileFactors
               join psf in db.ProjectStoryFactors
               join s in db.Stories
               join pim in db.ProjectIterationMembers
               join i db.Iteration
               join p db.Project
               where p.ProjectID == proj_id 
                     p.ProjectID == i.ProjectID and
                     i.ProjectIterationID == pim.ProjectIterationID and
                     pim.ProjectIterationMemberID == s.ProjectIterationMemberID and
                     s.StoryID == psf.StoryID and
                     psf.AgileFactorID == af.AgileFactorID
                     group af by af.Name into tagGroup

                     select new
                     {

                        ID = af.AgileFactorID,
                        Total = psf.Count() 

                     };


 var tagCloud = from psf in tagSummary
             where psf.AgileFactorID == tagSummary.ID
 select new
 {

 Name = psf.Name,
 ID = psf.AgileFactionID,
 Count = psf.Count(),

 weight = Count / tagSummary.Total * 100

};


ListView1.DataSource = tagCloud; 
ListView1.DataBind();

}
Run Code Online (Sandbox Code Playgroud)

Mar*_*ell 5

LINQ!= TSQL; 每个都and应该是C#&&,; 每个join应指定左右两部分(含equals)立即,即

join newAlias in newSet on existingAlias.Key equals newALias.Key
Run Code Online (Sandbox Code Playgroud)

如果你想编写TSQL,那很好 - 只需使用 .ExecuteQuery<T>(tsql, args)