You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

64 lines
2.0 KiB
C#

/*
* C# Program to Demonstrate DefaultIfEmpty case
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace program
{
class student
{
public string Name { get; set; }
public string stuID { get; set; }
}
class studentdetails
{
public string SID { get; set; }
public string City { get; set; }
}
class Program
{
static void Main(string[] args)
{
List<student> objstudent = new List<student>
{
new student{ Name="Bob",stuID="I001"},
new student{ Name="Vijay",stuID="I002"},
new student{ Name="Jerry",stuID="I003"},
new student{ Name="Tom",stuID="I004"},
new student{ Name="Senthil",stuID="I005"},
};
List<studentdetails> objstudentdetails = new List<studentdetails>
{
new studentdetails{ SID="I001",City="Delhi"},
new studentdetails{ SID="I002",City="Mumbai"},
new studentdetails{ SID="I007",City="Chennai"},
new studentdetails{ SID="I008",City="Pune"},
new studentdetails{ SID="I009",City=""},
};
var resultDefaultIfEmpty = from stu in objstudent
join studentdetails in objstudentdetails on stu.stuID equals studentdetails.SID into ResultEmpstudentdetails
from output in ResultEmpstudentdetails.DefaultIfEmpty()
select new
{
studentName = stu.Name,
City = output != null ? output.City : null
};
Console.WriteLine(string.Join("\n", resultDefaultIfEmpty.Select(stu => " student Name = " +
stu.studentName + ", City Name = " + stu.City).ToArray<string>()));
Console.ReadLine();
}
}
}
/*
student Name = Bob, City Name = Delhi
student Name = Vijay, City Name = Mumbai
student Name = Jerry, City Name =
student Name = Tom, City Name =
student Name = Senthil, City Name =