Improve this question
我有以下两组代码。我的问题是我们是否还需要将“ using”用于命令和适配器,还是仅用于连接?什么是正确的方法?
using (OracleConnection conn = new OracleConnection(ConnectionString))
{
conn.Open();
OracleCommand command = new OracleCommand(ProcedureName)
{
CommandType = CommandType.StoredProcedure,
Connection = conn
};
command.Parameters.Add(new OracleParameter("P_ID", OracleDbType.Varchar2, Id, ParameterDirection.Input));
command.Parameters.Add(new OracleParameter("CUR_OUT", OracleDbType.RefCursor, ParameterDirection.Output));
OracleDataAdapter adapter = new OracleDataAdapter(command);
adapter.Fill(dt);
}
上面的代码只有一个using,但是下面的代码只有3个using语句
using (OracleConnection conn = new OracleConnection(ConnectionString))
{
await conn.OpenAsync();
using (OracleCommand oCommand = new OracleCommand(ProcedureName))
{
oCommand.BindByName = true;
oCommand.CommandType = CommandType.StoredProcedure;
oCommand.CommandTimeout = await GetCommandTimeout(DatabaseConstants.OracleCommandTimeoutInSeconds);
oCommand.Connection = conn;
oCommand.Parameters.Add(new OracleParameter("P_ID", OracleDbType.Varchar2, Id, ParameterDirection.Input));
oCommand.Parameters.Add(new OracleParameter("CUR_OUT", OracleDbType.RefCursor, ParameterDirection.Output));
using (OracleDataAdapter oDatAdapter = new OracleDataAdapter(oCommand))
{
oDatAdapter.Fill(dataSet);
}
}
}
参考方案
您同时需要它们-连接和注释。任何实现IDisposable的东西都应该丢弃。
创建命令之前,您无需打开连接。这意味着您可以跳过一组{}
using (for connection)
using (for command)
{
processing
}
这是更好,更容易格式化的方法。
我实际上会在开始时检查是否还要为适配器使用它。
另请注意,在CURRENT C#(撰写本文时为8.0)中,您可以将using用于变量声明
using var conn = new OracleConnection()
没有()。变量位于末尾。这意味着更少的格式化。这称为“使用减法”-https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/proposals/csharp-8.0/using
当回复有时是一个对象有时是一个数组时,如何在使用改造时解析JSON回复? - java我正在使用Retrofit来获取JSON答复。这是我实施的一部分-@GET("/api/report/list") Observable<Bills> listBill(@Query("employee_id") String employeeID); 而条例草案类是-public static class…
改造正在返回一个空的响应主体 - java我正在尝试使用Retrofit和Gson解析一些JSON。但是,我得到的响应机构是空的。当我尝试从对象中打印信息时,出现NullPointerException。我确保URL正确,并且我也确保POJO也正确。我正在使用jsonschema2pojo来帮助创建POJO类。这是我要解析的JSON{ "?xml": { "@versi…
每个文件合并后添加换行 - python我有很多类似以下内容的JSON文件:例如。1.json{"name": "one", "description": "testDescription...", "comment": ""} test.json{"name"…
Json到php,json_decode返回NULL - php我正在用PHP进行JSON解析器的一些API,用于存储有关遗产的信息。我在解析时遇到问题,因为它返回的是NULL值而不是数组或对象。简单的JSON代码可以很好地解析,但是可以这样:{"success":true,"totalCount":1,"data":[{"id":99694…
将ajax的值存储到javascript变量中 - javascript我有一个php文件,其中我从服务器获取数据。该php文件的输出是一个包含json格式数据的变量。PHP文件:<?php $dbHostName = "localhost"; $dbUserName = "venseld"; $dbUserPass = "wecuuu"; $dbName = &…