gpt4 book ai didi

c# - 重用方法参数

转载 作者:行者123 更新时间:2023-11-30 19:16:43 25 4
gpt4 key购买 nike

我有这个代码:

public int Delete(int id)
{
string query = "DELETE FROM [table] WHERE [id] = @id";

using (SqlConnection sqlConnection = new SqlConnection(connectionString))
using (SqlCommand sqlCommand = new SqlCommand(query, sqlConnection))
{
sqlCommand.Parameters.Add("id", SqlDbType.Int).Value = id;

sqlConnection.Open();

if ((id = sqlCommand.ExecuteNonQuery()) == 0)
throw new Exception("Not found.");

return id;
}
}

是否可以重用参数 ID 来存储受影响的行数,还是我应该声明新变量?一般什么比较好?

最佳答案

开发者支出 much more time reading code than writing code .因此,您的主要目标之一应该是编写易于阅读和理解的代码。

如果我必须阅读您的代码并只浏览最后一行,我会得到(错误的)印象,即您的方法返回某种标识符。它没有。它返回删除的行数。

使用不同的变量使您的代码更易于阅读并且不会造成任何性能损失。

    ...
var rowsDeleted = sqlCommand.ExecuteNonQuery();
if (rowsDeleted == 0)
throw new Exception("Not found.");

return rowsDeleted;

它还使您的代码对更改更加健壮:想象一下,有一天您决定使用 GUID 而不是整数 ID,因此您将参数类型更改为 Guid。会发生什么?您的代码中完全不相关的部分损坏了,需要修复。

关于c# - 重用方法参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22015422/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com