如何使用名称访问SqlParameter数组

4 c# ado.net

我正在创建SqlParameterArray并将其传递给StoredProcedure。输出值将在StoredProcedures中设置。如何通过参数名称访问该值?

 SqlParameter[] parameters = { new SqlParameter {ParameterName = "@test", Value = "test", Direction = ParameterDirection.Output }}; 
Run Code Online (Sandbox Code Playgroud)

这有效

parameters[0].Value
Run Code Online (Sandbox Code Playgroud)

如何使它工作?

parameters["@test"].Value
Run Code Online (Sandbox Code Playgroud)

Jus*_*ony 5

这只是SqlParameters的数组,因此它将保持顺序,因为任何数组都可以使用。您可能会在此处使用LINQ(稍后将示例)

parameters.First(parameter => parameter.ParameterName == "@test")
Run Code Online (Sandbox Code Playgroud)