/// <summary>
        /// 根据id查询对象信息  如果无查询结果会抛出异常
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public T _SearchById(IdType id)
        {
            _logger.LogTrace($"根据ID查询对象(_SearchById),对象类型为:[{typeof(T).FullName}]");
            // 检查ID是否有效
            if (!new T().CheckId(id))
            {
                _logger.LogWarning($"按ID查询对象时,ID无效。类型为:[{typeof(T).FullName}][id={id}]");
                throw ApiException.BadRequest("请求的id无效。");
            }
            // 根据ID获取信息
            var info = _Dal.SearchByTypeId(id);

            _logger.LogTrace($"根据ID查询对象,已获取对象。类型为:[{typeof(T).FullName}]\r\n对象值:[{info.ToJson()}]");
            // 查询到Info对象后的事件处理
            OnSearchInfoById?.Invoke(info);
            return(info);
        }