Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Concat Используйте оператор для объединения двух последовательностей.
Оператор Concat определяется для упорядоченных мультимножеств, где порядки получателя и аргумента одинаковы.
Упорядочивание в SQL — это последний шаг перед получением результатов. По этой причине Concat оператор реализуется с помощью UNION ALL и не сохраняет порядок его аргументов. Чтобы убедиться в правильности порядка в результатах, обязательно задайте явный порядок.
Пример 1
В этом примере используется Concat для возврата последовательности всех Customer номеров телефонов и Employee факсов.
IQueryable<String> custQuery =
(from cust in db.Customers
select cust.Phone)
.Concat
(from cust in db.Customers
select cust.Fax)
.Concat
(from emp in db.Employees
select emp.HomePhone)
;
foreach (var custData in custQuery)
{
Console.WriteLine(custData);
}
Dim custQuery = _
(From c In db.Customers _
Select c.Phone) _
.Concat _
(From c In db.Customers _
Select c.Fax) _
.Concat _
(From e In db.Employees _
Select e.HomePhone)
For Each custData In custQuery
Console.WriteLine(custData)
Next
Пример 2
В этом примере используется Concat для возврата последовательности всех сопоставлений имен и номеров телефонов с помощью Customer и Employee.
var infoQuery =
(from cust in db.Customers
select new { Name = cust.CompanyName, cust.Phone }
)
.Concat
(from emp in db.Employees
select new
{
Name = emp.FirstName + " " + emp.LastName,
Phone = emp.HomePhone
}
);
foreach (var infoData in infoQuery)
{
Console.WriteLine("Name = {0}, Phone = {1}",
infoData.Name, infoData.Phone);
}
Dim infoQuery = _
(From cust In db.Customers _
Select Name = cust.CompanyName, Phone = cust.Phone) _
.Concat _
(From emp In db.Employees _
Select Name = emp.FirstName & " " & emp.LastName, _
Phone = emp.HomePhone)
For Each infoData In infoQuery
Console.WriteLine("Name = " & infoData.Name & _
", Phone = " & infoData.Phone)
Next