Пример #1
0
        /// <summary>
        /// Creates an insert operation for the supplied user
        /// </summary>
        /// <param name="document">the user to create an operation for</param>
        /// <returns>insert operation</returns>
        private IndexOperation CreateDocumentInsertOperation(Document document)
        {
            this.Log.LogInformation("creating user insert");

            UserDocument user = null;

            if (document is UserDocument)
            {
                user = (UserDocument)document;
            }
            else
            {
                this.Log.LogException("got document that is not a user document");
            }

            // check if important values are null
            if (user == null || string.IsNullOrWhiteSpace(user.Key) || string.IsNullOrWhiteSpace(user.UserHandle) || string.IsNullOrWhiteSpace(user.AppHandle))
            {
                this.Log.LogException("got bad parameters");
            }

            IndexOperation operation = new IndexOperation(IndexOperationType.Upload, "key", user.Key)
                                       .WithProperty("firstName", user.FirstName)
                                       .WithProperty("lastName", user.LastName)
                                       .WithProperty("appHandle", user.AppHandle)
                                       .WithProperty("userHandle", user.UserHandle);

            return(operation);
        }
Пример #2
0
 /// <summary>
 /// adds a User to the search index
 /// </summary>
 /// <param name="user">User to add</param>
 /// <returns>add user task</returns>
 public async Task AddUser(UserDocument user)
 {
     await this.AddDocument(user, this.CreateDocumentInsertOperation);
 }