删除参数&返回unuccsessful Ids

时间:2010-12-22 19:15:47

标签: c#

这可能吗?

我将逗号分隔的ID作为整数/字符串数组作为参数(即100,101,102,103,104,105)。

我需要在删除查询中传入。

即。 delete from tablename where ID in (100,101,102,103,104,105) and status='Completed';

如果100,102,105被删除&如果101& 103不会被删除(因为某些错误),那么我需要返回101& 103未删除错误消息(如果状态未完成)。

PLS。在这上面点亮。

3 个答案:

答案 0 :(得分:1)

您可以使用一个事务并分成两个操作。首先删除列表中的所有内容,然后查询列表中的所有内容,您将获得未删除的列表。之后就完成交易。

编辑:甚至不确定您是否需要交易,这取决于您的要求。

答案 1 :(得分:0)

归结为您将需要单独处理每个ID并确定删除是否成功。正如我在评论中所说,您对返回调用过程的内容有多种选择。它可以是List<CustomClass>Dictionary<int, string>,甚至是元组列表。

我个人倾向于使用List<CustomClass>,因为当我返回两件事(例如ID和错误)时,我总是想要稍后返回。

答案 2 :(得分:0)

您可以使用SQL存储过程来完成此任务。使用id列表调用sproc,让sproc返回一个id表,以及它没有成功的原因。