protected override void Search()
        {
            this.SearchStatus = Framework.EntityContracts.SearchStatus.Searching;

            #region Asyncronized wcf method call

            string             viewName = ViewName_SearchResult;
            Framework.UIAction uiAction = Framework.UIAction.Search;

            Messenger.Default.Send <Framework.UIActionStatusMessage>(new Framework.UIActionStatusMessage(EntityName, viewName, uiAction, Framework.UIActionStatus.Starting));

            MSBuildLogsExtended.WcfContracts.IBuildServiceAsyn _Instance = MSBuildLogsExtended.WcfContracts.WcfServiceResolverAsyn.ResolveWcfServiceBuild();

            AsyncCallback asyncCallback = delegate(IAsyncResult result)
            {
#if WINDOWS_PHONE
                DispatcherHelper.Initialize();
#endif
                try
                {
                    DispatcherHelper.CheckBeginInvokeOnUI((Action) delegate()
                    {
                        var responseMessage = _Instance.EndGetCollectionOfDefaultOfCommon(result);
                        MSBuildLogsExtended.DataSourceEntities.Build.DefaultCollection collection = responseMessage.Message;

                        if (this.m_EntityCollectionDefault == null)
                        {
                            this.m_EntityCollectionDefault = new ObservableCollection <MSBuildLogsExtended.DataSourceEntities.Build.Default>();
                        }

#if WINDOWS_PHONE
                        if (this.IsToClearExistingCollection)
                        {
                            this.m_EntityCollectionDefault.Clear();
                        }
#endif

                        if (collection != null)
                        {
                            foreach (MSBuildLogsExtended.DataSourceEntities.Build.Default item in collection)
                            {
                                this.m_EntityCollectionDefault.Add(item);
                            }
                        }


                        if (responseMessage.QueryPagingResult != null)
                        {
                            this.QueryPagingSetting = GetQueryPagingSettingFromQueryPagingResult(responseMessage.QueryPagingResult);

#if WINDOWS_PHONE
                            if (!this.IsToClearExistingCollection && this.QueryPagingSetting.CurrentPage <= this.QueryPagingSetting.CountOfPages)
                            {
                                this.QueryPagingSetting.CurrentPage++;
                            }
#endif
                        }

                        this.SearchStatus = Framework.EntityContracts.SearchStatus.SearchResultLoaded;

                        Messenger.Default.Send <Framework.UIActionStatusMessage>(new Framework.UIActionStatusMessage(EntityName, viewName, uiAction, Framework.UIActionStatus.Success));
                    });
                }
                catch (Exception ex)
                {
                    DispatcherHelper.CheckBeginInvokeOnUI((Action) delegate()
                    {
                        Messenger.Default.Send <Framework.UIActionStatusMessage>(new Framework.UIActionStatusMessage(EntityName, viewName, uiAction, Framework.UIActionStatus.Failed, ex.Message));
                    });
                }
            };

            try
            {
#if WINDOWS_PHONE
                this.AssignSelectedValueFromSelectedItemToCritieriaOfDefault();
#endif
                MSBuildLogsExtended.CommonBLLEntities.BuildRequestMessageUserDefinedOfCommon _Request = new MSBuildLogsExtended.CommonBLLEntities.BuildRequestMessageUserDefinedOfCommon()
                {
                    Critieria                      = this.Criteria,
                    QueryPagingSetting             = this.QueryPagingSetting,
                    QueryOrderBySettingCollection  = this.QueryOrderBySettingCollection,
                    BusinessLogicLayerRequestID    = Guid.NewGuid().ToString(),
                    BusinessLogicLayerRequestTypes = Framework.CommonBLLEntities.BusinessLogicLayerRequestTypes.Search,
                };

                _Instance.BeginGetCollectionOfDefaultOfCommon(_Request, asyncCallback, null);
            }
            catch (Exception ex)
            {
                Messenger.Default.Send <Framework.UIActionStatusMessage>(new Framework.UIActionStatusMessage(EntityName, viewName, uiAction, Framework.UIActionStatus.Failed, ex.Message));
            }

            #endregion Asyncronized wcf method call

            #region Syncronized wcf method call -- not in use/WPF only

            /*
             * if (this.m_EntityCollection == null)
             * {
             *  this.m_EntityCollectionDefault = new ObservableCollection<MSBuildLogsExtended.DataSourceEntities.Build.Default>();
             * }
             *
             * this.m_EntityCollectionDefault.Clear();
             *
             * MSBuildLogsExtended.DataSourceEntities.Build.DefaultCollection collection = MSBuildLogsExtended.CommonBLLIoC.IoCBuild.GetCollectionOfDefaultOfCommon(m_CriteriaOfGetCollectionOfDefaultOfCommon, this.m_QueryPagingSetting, this.m_QueryOrderBySettingCollection);
             * if(collection != null)
             * {
             *  foreach (MSBuildLogsExtended.DataSourceEntities.Build.Default item in collection)
             *  {
             *      this.m_EntityCollectionDefault.Add(item);
             *  }
             * }
             */
            #endregion Syncronized wcf method call -- not in use/WPF only
        }
 /// <summary>
 /// Gets the single of entity of "Common".
 /// </summary>
 /// <param name="request">The request.</param>
 /// <returns></returns>
 public MSBuildLogsExtended.CommonBLLEntities.BuildResponseMessageBuiltIn.Default GetSingleOfDefaultOfCommon(
     MSBuildLogsExtended.CommonBLLEntities.BuildRequestMessageUserDefinedOfCommon request)
 {
     return(base.Channel.GetSingleOfDefaultOfCommon(request));
 }
 /// <summary>
 /// Gets the collection of entity of "Common".
 /// </summary>
 /// <param name="request">The request.</param>
 /// <returns></returns>
 public MSBuildLogsExtended.CommonBLLEntities.BuildResponseMessageBuiltIn GetCollectionOfEntityOfCommon(
     MSBuildLogsExtended.CommonBLLEntities.BuildRequestMessageUserDefinedOfCommon request)
 {
     return(base.Channel.GetCollectionOfEntityOfCommon(request));
 }
 /// <summary>
 /// Exists the of entity of "Common".
 /// </summary>
 /// <param name="request">The request.</param>
 /// <returns>true if exists any, otherwise false</returns>
 public Framework.CommonBLLEntities.BusinessLogicLayerResponseMessageBoolean ExistsOfDefaultOfCommon(
     MSBuildLogsExtended.CommonBLLEntities.BuildRequestMessageUserDefinedOfCommon request)
 {
     return(base.Channel.ExistsOfDefaultOfCommon(request));
 }
 /// <summary>
 /// Gets the count of entity of "Common".
 /// </summary>
 /// <param name="request">The request.</param>
 /// <returns>the count</returns>
 public Framework.CommonBLLEntities.BusinessLogicLayerResponseMessageInteger GetCountOfEntityOfCommon(
     MSBuildLogsExtended.CommonBLLEntities.BuildRequestMessageUserDefinedOfCommon request)
 {
     return(base.Channel.GetCountOfEntityOfCommon(request));
 }