Table of Contents
Question/Problem Description
How to call GetMemberList() method in FOR EACH loop in C#?
public async Task<IEnumerable<Domain.BARTER.Member>> GetMemberList()
{
using (var con = new SqlConnection(BridgeControllers.Database.BarterDBString))
{
var storedProcedureName = "MemberList";
return await con.QueryAsync<Domain.BARTER.Member>(storedProcedureName, new { }, commandType: CommandType.StoredProcedure);
}
}
Solution
Calling this in a for loop will be the best.
- The method does not seem to have a filter (for example, maybe you would be getting a list of members based on a parameter that’s changing in each iteration). So I would surmise it returns all Members.
- This method is creating a new SqlConnection, which would mean this would be done on each iteration. That might not be the best. You could of course pass the connection into this method as a parameter, then instantiate one connection and pass that for each call.
Are you using EntityFramework?
LINQ to Entities would be another way to accomplish this if you are using EntityFramework.