Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In de volgende voorbeelden ziet u hoe de select-instructie in C# en de Select-instructie in Visual Basic kunnen worden gecombineerd met andere elementen om queryprojecties te vormen.
Voorbeeld 1
In het volgende voorbeeld wordt de Select component in Visual Basic (select component in C#) gebruikt om een reeks contactnamen voor Customerste retourneren.
var nameQuery =
from cust in db.Customers
select cust.ContactName;
Dim nameQuery = From cust In db.Customers _
Select cust.ContactName
Voorbeeld 2
In het volgende voorbeeld wordt de Select component in Visual Basic (select component in C#) en anonieme typen gebruikt om een reeks contactnamen en telefoonnummers voor Customerste retourneren.
var infoQuery =
from cust in db.Customers
select new { cust.ContactName, cust.Phone };
Dim infoQuery = From cust In db.Customers _
Select cust.ContactName, cust.Phone
Voorbeeld 3
In het volgende voorbeeld wordt de Select component in Visual Basic (select component in C#) en anonieme typen gebruikt om een reeks namen en telefoonnummers voor werknemers te retourneren. De FirstName en LastName velden worden gecombineerd in één veld (Name), en het HomePhone veld wordt omgedoopt naar Phone in de resulterende volgorde.
var info2Query =
from emp in db.Employees
select new
{
Name = emp.FirstName + " " + emp.LastName,
Phone = emp.HomePhone
};
Dim info2Query = From emp In db.Employees _
Select Name = emp.FirstName & " " & emp.LastName, _
Phone = emp.HomePhone
Voorbeeld 4
In het volgende voorbeeld wordt de Select component in Visual Basic (select component in C#) en anonieme typen gebruikt om een reeks van alle ProductIDs en een berekende waarde met de naam HalfPricete retourneren. Deze waarde wordt ingesteld op de UnitPrice gedeelde waarde door 2.
var specialQuery =
from prod in db.Products
select new { prod.ProductID, HalfPrice = prod.UnitPrice / 2 };
Dim specialQuery = From prod In db.Products _
Select prod.ProductID, HalfPrice = CDec(prod.UnitPrice) / 2
Voorbeeld 5
In het volgende voorbeeld wordt de Select component in Visual Basic (select component in C#) en een voorwaardelijke instructie gebruikt om een reeks productnamen en beschikbaarheid van producten te retourneren.
var prodQuery =
from prod in db.Products
select new
{
prod.ProductName,
Availability =
prod.UnitsInStock - prod.UnitsOnOrder < 0
? "Out Of Stock" : "In Stock"
};
Dim prodQuery = From prod In db.Products _
Select prod.ProductName, Availability = _
If(prod.UnitsInStock - prod.UnitsOnOrder < 0, _
"Out Of Stock", "In Stock")
Voorbeeld 6
In het volgende voorbeeld wordt een Visual Basic-component Select (select component in C#) en een bekend type (naam) gebruikt om een reeks van de namen van werknemers te retourneren.
public class Name
{
public string FirstName = "";
public string LastName = "";
}
void empMethod()
{
Northwnd db = new Northwnd(@"c:\northwnd.mdf");
var empQuery =
from emp in db.Employees
select new Name
{
FirstName = emp.FirstName,
LastName = emp.LastName
};
}
Public Class Name
Public FirstName As String
Public LastName As String
End Class
Dim db As New Northwnd("c:\northwnd.mdf")
Dim empQuery = From emp In db.Employees _
Select New Name With {.FirstName = emp.FirstName, .LastName = _
emp.LastName}
Voorbeeld 7
In het volgende voorbeeld wordt gebruikgemaakt van Select en Where in Visual Basic (select en where in C#) om een gefilterde reeks van contactnamen voor klanten in Londen te retourneren.
var contactQuery =
from cust in db.Customers
where cust.City == "London"
select cust.ContactName;
Dim contactQuery = _
From cust In db.Customers _
Where cust.City = "London" _
Select cust.ContactName
Voorbeeld 8
In het volgende voorbeeld wordt een Select component in Visual Basic (select component in C#) en anonieme typen gebruikt om een vormgegeven subset van de gegevens over klanten te retourneren.
var custQuery =
from cust in db.Customers
select new
{
cust.CustomerID,
CompanyInfo = new { cust.CompanyName, cust.City, cust.Country },
ContactInfo = new { cust.ContactName, cust.ContactTitle }
};
Dim custQuery = From cust In db.Customers _
Select cust.CustomerID, CompanyInfo = New With {cust.CompanyName, _
cust.City, cust.Country}, ContactInfo = _
New With {cust.ContactName, cust.ContactTitle}
Voorbeeld 9
In het volgende voorbeeld worden geneste query's gebruikt om de volgende resultaten te retourneren:
Een reeks van alle orders en de bijbehorende
OrderIDs.Een subsequentiteit van de items in de volgorde waarvoor een korting geldt.
Het bedrag dat wordt bespaard als de kosten van verzending niet zijn inbegrepen.
var ordQuery =
from ord in db.Orders
select new
{
ord.OrderID,
DiscountedProducts =
from od in ord.OrderDetails
where od.Discount > 0.0
select od,
FreeShippingDiscount = ord.Freight
};
Dim ordQuery = From ord In db.Orders _
Select ord.OrderID, DiscountedProducts = _
(From od In ord.OrderDetails _
Where od.Discount > 0.0 _
Select od), _
FreeShippingDiscount = ord.Freight