我在这里遇到了一个奇怪的问题。我在桌面应用程序上执行与在 mi Service App 上完全相同的代码,但结果不同。
我正在调用一个查询 SQL 数据库的方法。DataTable.Rows.Count
使用我的桌面应用程序检查属性时,我得到 600 行。当我对服务执行该操作时,我得到 0 行。我没有任何异常,只有 0 行。
这是代码:
public static DataTable GetAlarmas()
{
try
{
string query = "P_Get_Alarmas";
resultado = SqlHelper.ExecuteDataset(ConnectionString, CommandType.StoredProcedure, query);
Log.Log.LogError(resultado.Tables[0].Rows.Count.ToString());
}
catch (Exception ex)
{
Log.Log.LogError(ex.ToString());
}
return resultado.Tables[0];
}
我已经这样做了很长时间,而且我以前从未遇到过这个问题。有任何想法吗?
这是程序代码:
ALTER PROCEDURE [dbo].[P_Get_Alarmas]
AS
SELECT
Al.ID_Registro AS 'ID',
'50' +
'11' +
' ' +
'18' +
STUFF(CAST(Ab.id AS VARCHAR),1,0, REPLICATE('0',4- LEN(CAST(Ab.id AS VARCHAR)))) +
--'E350' +
Ev.codigoEvento +
'01' +
STUFF(CAST(Desc_Zona AS VARCHAR),1,0, REPLICATE('0',3- LEN(CAST(Desc_Zona AS VARCHAR))))+
'[DC4]'
AS 'ALARMA'
FROM AlarmReceptor Al
INNER JOIN Abonados Ab ON Al.Numero_Abonado = Ab.nroAbonado
INNER JOIN Eventos Ev ON Al.Desc_Evento = Ev.descEvento
WHERE Al.informado IS NULL
ORDER BY Al.ID_Registro