Boa tarde.
Gostaria de saber qual pode ser o problema para gerar uma exceção do tipo abaixo:
CoercedValueIsDataFeed = '(new System.Collections.Generic.Mscorlib_CollectionDebugView<System.Data.SqlClient.SqlParameter>(parameters).Items[0]).CoercedValueIsDataFeed' threw an exception of type 'System.NullReferenceException'
O código é o seguinte:
string query = @"
SELECT TOP 1 u.CodUsuario [UserId]
,e.CustomerID [CustomerId]
,(
SELECT ii.NextId
FROM intraNEXT.dbo.Integration_Intranet ii(NOLOCK)
WHERE ii.IntranetId = ge.CustomerID
AND ii.EntityName = 'EconomicGroup'
) [EconomicGroupId]
,e.CodERP [CodERP]
,u.CodTipoAcesso [UserGroupId]
,u.CodTipoUsuario [UserTypeId]
,(
SELECT TOP 1 r.CodRegiao
FROM tblRegiao r(NOLOCK)
WHERE r.CodERP = ge.CodERP
ORDER BY r.CodRegiao
) [ResellerRegionId]
,ISNULL(u.Cel, '') [Cellphone]
,u.Codigo [Code]
,u.Email [Email]
,u.LOGIN [Login]
,u.NomeUsuario [Name]
,ISNULL(u.Cargo, '') [Office]
,u.Senha [Password]
,u.CGC [TaxId]
,ISNULL(u.Tel, '') [Telephone]
,u.AlterarSenha [ChangePassword]
,u.AutorizadoPremios [AuthorizedToReceivePrizes]
,u.ClientId [ClientId]
,u.Secret [Secret]
,ge.NomeGrupo [NomeGrupo]
,u.CodUsuario [IntranetUserID]
,(
SELECT TOP 1 r.CodRegiao
FROM tblRegiao r(NOLOCK)
WHERE r.CodERP = ge.CodERP
ORDER BY r.CodRegiao
) [CodRegiao]
FROM tblUsuario u(NOLOCK)
INNER JOIN tblempresaRel e(NOLOCK) ON u.CGC = e.CGC
AND e.CustomerID IS NOT NULL
AND (
u.EmpresaCustomerId IS NULL
OR u.EmpresaCustomerId = e.CustomerID
)
LEFT JOIN wcnUsuarioWestcon uw(NOLOCK) ON uw.IDUsuario = u.CodUsuario
AND uw.IDUsuario IS NULL
INNER JOIN tblGrupoEconomico ge(NOLOCK) ON ge.CustomerID = e.CustomerID
WHERE u.LOGIN = @Login
AND u.Senha = @Senha
ORDER BY e.ID
";
using (DatabaseHelper dbHelper = CreateIntranetReadOnly())
{
List<SqlParameter> parameters = new List<SqlParameter>
{
dbHelper.BuildParameter("@Login", login),
dbHelper.BuildParameter("@Senha", senha)
};
user = dbHelper.Get<Entities.User>(query, parameters.ToArray()); => Aqui ocorre a exceção.
if (user != null) user.GroupEconomic = new GroupEconomicDAO().Get(user.CustomerId);
}
Obrigado.