From d5d00553b415437dc68500b564a9b4cd4e94bc10 Mon Sep 17 00:00:00 2001 From: Sebastiaan Janssen Date: Wed, 8 May 2013 08:09:13 -0200 Subject: [PATCH] Fixed U4-2176 MySql Dashboard error for 4.11 as well --- src/umbraco.businesslogic/Log.cs | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/umbraco.businesslogic/Log.cs b/src/umbraco.businesslogic/Log.cs index 3d6191d65f..f466fa0a9d 100644 --- a/src/umbraco.businesslogic/Log.cs +++ b/src/umbraco.businesslogic/Log.cs @@ -3,7 +3,8 @@ using System.ComponentModel; using System.Data; using System.Diagnostics; using System.Threading; - +using System.Web.UI.WebControls; +using Umbraco.Core; using umbraco.DataLayer; using System.Collections.Generic; using System.Reflection; @@ -344,8 +345,13 @@ namespace umbraco.BusinessLogic [Obsolete("Use the Instance.GetLogItems method which return a list of LogItems instead")] internal static IRecordsReader GetLogReader(User user, LogTypes type, DateTime sinceDate, int numberOfResults) { - return SqlHelper.ExecuteReader( - "select top " + numberOfResults + " userId, NodeId, DateStamp, logHeader, logComment from umbracoLog where UserId = @user and logHeader = @logHeader and DateStamp >= @dateStamp order by dateStamp desc", + var query = "select {0} userId, NodeId, DateStamp, logHeader, logComment from umbracoLog where UserId = @user and logHeader = @logHeader and DateStamp >= @dateStamp order by dateStamp desc {1}"; + + query = SqlHelper.ConnectionString.ToLowerInvariant().Contains(";datalayer=MySql".ToLowerInvariant()) + ? string.Format(query, string.Empty, "limit 0," + numberOfResults) + : string.Format(query, "top " + numberOfResults, string.Empty); + + return SqlHelper.ExecuteReader(query, SqlHelper.CreateParameter("@logHeader", type.ToString()), SqlHelper.CreateParameter("@user", user.Id), SqlHelper.CreateParameter("@dateStamp", sinceDate));