Не удалось передать параметр в SQL-запрос Dapper [дубликат]

Исключение нулевого указателя генерируется, когда приложение пытается использовать null в случае, когда требуется объект. К ним относятся:

  1. Вызов метода экземпляра объекта null.
  2. Доступ или изменение поля объекта null.
  3. Принимая длину null, как если бы это был массив.
  4. Доступ или изменение слотов null, как если бы это был массив.
  5. Бросок null как будто это было значение Throwable.

Приложения должны бросать экземпляры этого класса, чтобы указать на другие незаконные использования объекта null.

Ссылка: http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html

1
задан heads5150 29 December 2013 в 05:34
поделиться

1 ответ

Пропустить объект как второй параметр функции запроса. Обратите внимание на дополнительный параметр в приведенном ниже коде: «new {StartDate = startDate, EndDate = endDate, AgentId = agentId, Crc = crc}"

var items = connection.Query<CallSearchRepositoryBO>
                                                      ("SELECT  h.historyid " +
                                                       " ,h.Dialid " +
                                                       " ,h.Crc " +
                                                       " ,c.szExternalId ExternalId " +
                                                       " ,a.AgentId " +
                                                       " ,UPPER(a.LastName +',' +a.FirstName) Agent" +
                                                       " ,c.ContactId" +
                                                       " ,CallDateTime" +
                                                       " ,h.ProjName Campaign" +
                                                       " ,h.PhoneNum PhoneNumber" +
                                                       " ,szQ01 Q1" +
                                                       " ,szQ02 Q2" +
                                                       " ,szQ03 Q3" +
                                                       " ,szQ04 Q4" +
                                                       " ,szQ05 Q5" +
                                                       " ,szQ06 Q6" +
                                                       " ,szQ07 Q7" +
                                                       " ,szQ08 Q8" +
                                                       " ,szQ09 Q9" +
                                                       " ,szQ10 Q10" +
                                                       " ,txtQ33 Comments" +
                                                       " ,szFaxType AlertType" +
                                                       " ,r.VoxFilePath+VoxFileName RecordingPath" +
                                                       " ,r.RecLength" +
                                                       " ,CASE WHEN DataLength(txtQ33) > 0 THEN 1 ELSE 0 END HasComments " +
                                                       " FROM Touchstar..History h" +
                                                       " INNER JOIN Touchstar..Agent a WITH(NOLOCK) ON h.AgentId = a.AgentId" +
                                                       " INNER JOIN Touchstar..Recording r WITH(NOLOCK) ON h.HistoryId = r.HistoryId" +
                                                       " LEFT JOIN Touchstar..Contact c WITH(NOLOCK)  ON h.DialId = c.DialId" +
                                                       " LEFT JOIN Touchstar..Sales s WITH(NOLOCK) ON c.ContactId = s.ContactId" +
                                                       " WHERE h.CallDateTime BETWEEN @StartDate AND @EndDate" + 
                                                       " AND h.AgentId=@AgentId"+
                                                       " AND h.Crc=@Crc," +
                                                       " AND c.szCampaignId IN('UP2','UP4')" +
                                                       " ORDER BY CallDateTime DESC", new {StartDate = startDate, EndDate = endDate, AgentId = agentId, Crc = crc}).ToList();
2
ответ дан heads5150 18 August 2018 в 18:17
поделиться
  • 1
    @ В именах c # не нужно, но довольно мило – Marc Gravell♦ 29 December 2013 в 10:20
  • 2
    @MarcGravell мог бы просто отредактировать, а не саркастически .... – heads5150 29 December 2013 в 13:20
  • 3
    Благодаря @ heads5150 ... саркастические люди склонны делать это, чтобы компенсировать другие недостатки ... – user3143072 29 December 2013 в 16:12
  • 4
    Я не саркастичен. – Marc Gravell♦ 29 December 2013 в 17:31
Другие вопросы по тегам:

Похожие вопросы: