sách gpt4 ai đã đi

Có cách nào để sử dụng tham số out trong phương thức bất đồng bộ không? Nếu không, có ai có thể gợi ý cách tôi có thể trả về tham số OUT từ phương thức bất đồng bộ không?

In lại 作者:太空宇宙 更新时间:2023-11-03 17:40:20 36 4
mua khóa gpt4 Nike

我正在使用以下方法:

public async Task Save(Foo foo,out int param)
{
.......
MySqlParameter prmparamID = new MySqlParameter("pParamID", MySqlDbType.Int32);
prmparamID .Direction = ParameterDirection.Output;
sqlCommand.Parameters.Add(prmparamID);
thử
{
await sqlConnection.OpenAsync();
await sqlCommand.ExecuteNonQueryAsync();

status = (SaveStatus)Convert.ToInt32(prmReturnValue.Value);

if (status == SaveStatus.Success)
{
if (Common.IsDBValueNotNullOrEmpty(prmParamID))
{
param= Convert.ToInt32(prmParamID.Value);
}
}
}

return status;
}

我想返回状态和整数参数。谁能帮我解决这个问题?

1 Câu trả lời

không đồng bộ 方法中不能有 ngoài 参数。以下是有关原因的更多信息:Why async methods cannot have ref or out parameters?

如果你想返回多个返回值,你可能应该有一个类来保存这些值并返回它。

如果你不想创建一个新类,你可以使用Tuple:

public async Task<>> Save(Foo foo)
{
SaveStatus status;
int param;

// ...

return Tuple.Create(status, param);
}

关于c# - 有没有办法在异步方法中使用 out 参数?如果没有,谁能建议我如何从异步方法返回 OUT 参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28569529/

36 4 0
太空宇宙
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com