Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Det här exemplet returnerar en raduppsättning från databasen och innehåller en indataparameter för att filtrera resultatet.
När du kör en lagrad procedur som returnerar en raduppsättning använder du ett resultat klass som lagrar returerna från den lagrade proceduren. Mer information finns i Analysera LINQ till SQL-källkod.
Exempel
Följande exempel representerar en lagrad procedur som returnerar rader med kunder och använder en indataparameter för att returnera endast de rader som visar "London" som kundstad. Exemplet förutsätter en uppräkningsbar CustomersByCityResult-klass.
CREATE PROCEDURE [dbo].[Customers By City]  
    (@param1 NVARCHAR(20))  
AS  
BEGIN  
    -- SET NOCOUNT ON added to prevent extra result sets from  
    -- interfering with SELECT statements.  
    SET NOCOUNT ON;  
    SELECT CustomerID, ContactName, CompanyName, City from Customers  
        as c where c.City=@param1  
END  
[Function(Name="dbo.Customers By City")]
public ISingleResult<CustomersByCityResult> CustomersByCity([Parameter(DbType="NVarChar(20)")] string param1)
{
    IExecuteResult result = this.ExecuteMethodCall(this,         ((MethodInfo)(MethodInfo.GetCurrentMethod())), param1);
    return ((ISingleResult<CustomersByCityResult>)(result.ReturnValue));
}
// Call the stored procedure.
void ReturnRowset()
{
    Northwnd db = new Northwnd(@"c:\northwnd.mdf");
    ISingleResult<CustomersByCityResult> result =
        db.CustomersByCity("London");
    foreach (CustomersByCityResult cust in result)
    {
        Console.WriteLine($"CustID={cust.CustomerID}; City={cust.City}");
    }
}
    <FunctionAttribute(Name:="dbo.Customers By City")> _
        Public Function CustomersByCity(<Parameter(DbType:="NVarChar(20)")> ByVal param1 As String) As ISingleResult(Of CustomersByCityResult)
        Dim result As IExecuteResult = Me.ExecuteMethodCall(Me, CType(MethodInfo.GetCurrentMethod, MethodInfo), param1)
        Return CType(result.ReturnValue, ISingleResult(Of CustomersByCityResult))
    End Function
Sub ReturnRowset()
    ' Call the stored procedure.
    Dim db As New Northwnd("c:\northwnd.mdf")
    Dim result As IEnumerable(Of CustomersByCityResult) = _
        db.CustomersByCity("London")
    For Each cust As CustomersByCityResult In result
        Console.WriteLine("CustID={0}; City={1}", _
            cust.CustomerID, cust.City)
    Next
End Sub