0

我这里有问题。

在 c# 代码中,我正在构建一个名为的方法 saveImages(Guid ImageId, String url, byte[] imageData),该方法调用存储过程以将数据存储在 sql server 上。

我了解如何构造存储过程并从 C# 代码调用它的所有过程。

我的问题是,现在我希望代码的行为方式是,如果保存成功返回 imageId,否则返回 null。

我应该如何构造存储过程?如何设置参数?以及如何在 C# 中获取返回值?

谢谢

4

1 回答 1

0

如前所述,您首先添加:

SELECT SCOPE_IDENTITY();

在您的存储过程结束时。

您的方法应类似于:

public int saveImages(Guid ImageId, String url, byte[] imageData)
    {
      using (SqlCommand command = new SqlCommand() {
        Connection = your connection,
        CommandType = CommandType.StoredProcedure,
        CommandText = "your Stored Procedure"
      })
      {
        try
        {
          command.Parameters.AddWithValue(...); // Add your Parameters here
          return (int)command.ExecuteScalar();
        }
        catch
        {
          return 0;
        }
      }
    }
于 2013-05-27T15:42:39.187 回答