I have entity called Customer and it has three properties:
public class Customer { public virtual Guid CompanyId; public virtual long Id; public virtual string Name; }
I have also entity called Splitting and it has three properties:
public class Splitting { public virtual long CustomerId; public virtual long Id; public virtual string Name; }
Now I need to write a method that gets companyId and customerId. The method should return list of splitting that relates to the specific customerId in the companyId. Something like this:
public IList<Splitting> get(Guid companyId, long customrId) { var res=from s in Splitting from c in Customer ...... how to continue? return res.ToList(); }
A simple inner join that correlates elements from two data sources based on a simple key. An inner join that correlates elements from two data sources based on a composite key. A composite key, which is a key that consists of more than one value, enables you to correlate elements based on more than one property.
One commonly used feature of Language-Integrated Query (LINQ) is the facility to combine two sequences of related data using joins. The standard join operation provides an inner join but with a minor modification can be changed to give a left outer join.
LINQ Inner Join Inner Join produces the result from two or more than two tables. So, basically we are meant to get the records from both tables based on matching conditions. Basically in SQL, we use the INNER JOIN keyword to make relationship between both tables. The following is the Linq query for above SQL query.
var res = from s in Splitting join c in Customer on s.CustomerId equals c.Id where c.Id == customrId && c.CompanyId == companyId select s;
Using Extension methods
:
var res = Splitting.Join(Customer, s => s.CustomerId, c => c.Id, (s, c) => new { s, c }) .Where(sc => sc.c.Id == userId && sc.c.CompanyId == companId) .Select(sc => sc.s);
You can find a whole bunch of Linq examples in visual studio. Just select Help -> Samples
, and then unzip the Linq samples.
Open the linq samples solution and open the LinqSamples.cs of the SampleQueries project.
The answer you are looking for is in method Linq14:
int[] numbersA = { 0, 2, 4, 5, 6, 8, 9 }; int[] numbersB = { 1, 3, 5, 7, 8 }; var pairs = from a in numbersA from b in numbersB where a < b select new {a, b};
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With