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
Linq 如何将下面的SQLQuery转换为LINO_Linq - Fatal编程技术网

Linq 如何将下面的SQLQuery转换为LINO

Linq 如何将下面的SQLQuery转换为LINO,linq,Linq,我在C中使用VS2008,我真的没有时间讨论所有这些,但是我可以告诉你如何完成 SELECT t_PersonalInformation.personalInformation_Name, t_PersonalInformation.personalInformation_PresentAddress, t_PersonalInformation.personalInformation_PermanentAddress, t_Persona

我在C中使用VS2008,我真的没有时间讨论所有这些,但是我可以告诉你如何完成

SELECT     t_PersonalInformation.personalInformation_Name,             t_PersonalInformation.personalInformation_PresentAddress, 
           t_PersonalInformation.personalInformation_PermanentAddress, t_PersonalInformation.personalInformation_Phone, 
           t_PersonalInformation.personalInformation_Email,

           t_Applicant.applicant_TotalExperience,

           t_Experience.experience_CompanyName, CAST( t_Experience.experience_EndingYear AS INT) - CAST( t_Experience.experience_JoiningYear AS INT) AS yearOfExperience ,
           t_Experience.experience_Responsibilities,

           t_Training.training_TitleDetails,   t_Training.training_Institute,
           t_Training.training_Year,           t_Training.training_Duration


FROM         t_Applicant LEFT OUTER JOIN
             t_PersonalInformation ON  t_Applicant.applicant_user_ID = t_PersonalInformation.personalInformation_applicant_ID

             LEFT OUTER JOIN   
             t_Experience          ON  t_Applicant.applicant_user_ID = t_Experience.experience_applicant_ID

             LEFT OUTER JOIN
             t_Training            ON  t_Applicant.applicant_user_ID = t_Training.training_applicant_ID



WHERE     (t_Applicant.applicant_user_ID = 'hasib789') 
第二个“from”语句是执行外部联接的方法之一。DefaultIfEmpty允许它生成ClassName的新记录,即使找不到perInf的匹配记录。一旦您实际在底部的新记录中分配值,就必须检查null


使用该模板,您应该能够生成查询的其余部分。

请发布您目前编写的代码。人们通常不喜欢只为您编写代码。
var query = from var applicant in t_Applicant
    from perInf in t_PersonalInformation.Where(per => applicant.applicant_user_ID = per.personalInformation_applicant_ID).DefaultIfEmpty()
    where applicant.applicant_user_ID == "hasib789"
    select new ClassName{
        Name = perInf!=null ? perInf.personalInformation_Name : <default value>,
        PresentAddress = perInf!=null ? perInf.personalInformation_PresentAddress: <default value>,
        ...
        etc
    }