1

ここに私のコード-

 using (SqlDataReader sqlDataReader = ExecuteReader(CommandType.StoredProcedure, StoredProcedures.AuthenticateUser, sqlParameter))
        {
            isAuthenticated = Convert.ToBoolean(sqlParameter[2].Value);
            if (isAuthenticated)
            {
                if (sqlDataReader.Read())
                {
                    User = new UserEntity();
                    DbHelper.GetEntity(sqlDataReader, User);
                }                 
            }
        }

常にnullでisAuthenticatedあるため、常にfalseになりますが、クエリを実行すると値が返されますが、その場合、entity.suggestを埋めることはできません。sqlParameter[2].ValueExecuteNonQuery

4

1 に答える 1

0

DataReader からすべての結果を読み取るまで、出力パラメーターは使用できないと思います。代わりにこれを試してください:

using (SqlDataReader sqlDataReader = ExecuteReader(CommandType.StoredProcedure, 
       StoredProcedures.AuthenticateUser, sqlParameter))
{
     var newUser = new UserEntity();
     if (sqlDataReader.Read())
     {             
         DbHelper.GetEntity(sqlDataReader, User);
     }

     isAuthenticated = Convert.ToBoolean(sqlParameter[2].Value);         
     if (isAuthenticated)
     {
         User = newUser;
     }
 }
于 2011-01-10T12:28:55.843 に答える