I have a list of CheckBox
es:
List<CheckBox> checkBoxes = new List<CheckBox>();
I want to update it via a stored procedure, so I have:
private void btnSave_Click(object sender, EventArgs e)
{
SQLConnMgr db = new SQLConnMgr();
foreach (var c in checkBoxes)
{
db.ExeSQL($"exec test @CheckBoxName = {c.Name}, @CheckBoxValue = {c.Checked} ");
}
}
Stored procedure:
CREATE OR ALTER PROCEDURE test
-- Add the parameters for the stored procedure here
@CheckBoxName VARCHAR(255),
@CheckBoxValue BIT
AS
BEGIN
SET NOCOUNT ON;
-- Insert statements for procedure here
UPDATE MyTable SET @CheckBoxName = @CheckBoxValue
END
My question is: is there another way to do this? Like sending multiple petitions in the foreach
statement instead of only one at a time?
UPDATE
So to be more clear every bool is a column so I need something like:
DECLARE @CurrentCheckboxName VARCHAR(255) = (SELECT
[CheckBoxName]
FROM @CheckBoxList)
UPDATE [m]
SET
@CurrentCheckboxName = [c].[CheckBoxValue]
FROM [RedMarkItems] [m]
JOIN @CheckBoxList [c] ON [c].[CheckBoxName] = @CurrentCheckboxName
but how can iterate on each checkboxName in my DECLARE?