瀏覽代碼

Extract the prefix for MediaAttachment insertions to a static member instead of generating it per-query.

Andrew Mahone 5 年之前
父節點
當前提交
8505ee9d6c
共有 1 個文件被更改,包括 15 次插入1 次删除
  1. 15 1
      Emby.Server.Implementations/Data/SqliteItemRepository.cs

+ 15 - 1
Emby.Server.Implementations/Data/SqliteItemRepository.cs

@@ -51,6 +51,19 @@ namespace Emby.Server.Implementations.Data
         private readonly TypeMapper _typeMapper;
         private readonly TypeMapper _typeMapper;
         private readonly JsonSerializerOptions _jsonOptions;
         private readonly JsonSerializerOptions _jsonOptions;
 
 
+        static SqliteItemRepository() {
+            var queryPrefixText = new StringBuilder();
+            queryPrefixText.Append("insert into mediaattachments (");
+            foreach (var column in _mediaAttachmentSaveColumns)
+            {
+                queryPrefixText.Append(column);
+                queryPrefixText.Append(',');
+            }
+            queryPrefixText.Length -= 1;
+            queryPrefixText.Append(") values ");
+            _mediaAttachmentInsertPrefix = queryPrefixText.ToString();
+        }
+
         /// <summary>
         /// <summary>
         /// Initializes a new instance of the <see cref="SqliteItemRepository"/> class.
         /// Initializes a new instance of the <see cref="SqliteItemRepository"/> class.
         /// </summary>
         /// </summary>
@@ -436,6 +449,7 @@ namespace Emby.Server.Implementations.Data
             "Filename",
             "Filename",
             "MIMEType"
             "MIMEType"
         };
         };
+        private static readonly string _mediaAttachmentInsertPrefix;
 
 
         private static string GetSaveItemCommandText()
         private static string GetSaveItemCommandText()
         {
         {
@@ -6223,7 +6237,7 @@ where AncestorIdText not null and ItemValues.Value not null and ItemValues.Type
 
 
             while (startIndex < attachments.Count)
             while (startIndex < attachments.Count)
             {
             {
-                var insertText = new StringBuilder(string.Format("insert into mediaattachments ({0}) values ", string.Join(",", _mediaAttachmentSaveColumns)));
+                var insertText = new StringBuilder(_mediaAttachmentInsertPrefix);
 
 
                 var endIndex = Math.Min(attachments.Count, startIndex + insertAtOnce);
                 var endIndex = Math.Min(attachments.Count, startIndex + insertAtOnce);