public Task <T> Search <T>(int langId, Expression <Func <T, IComparable> > outExpr, object value) where T : class { try { var propertyInfo = ((MemberExpression)outExpr.Body).Member as PropertyInfo; if (propertyInfo == null) { throw new ArgumentException("The lambda expression 'property' should point to a valid Property"); } SearchViewModal model = new SearchViewModal(); model.ProjectName = _project; var tip = typeof(T); model.Id = tip.GUID; model.key = propertyInfo.Name; model.value = value; RestRequest rest = new RestRequest("/ModalType/GetByKey", Method.POST); rest.AddJsonBody(model); var result = _client.Execute(rest); } catch (Exception ext) { } return(null); }
public async Task <ResponseData> GetByKey([FromBody] SearchViewModal model) { try { BsonDocument docuement = new BsonDocument(); docuement.Add(new BsonElement("Guid", model.Id)); docuement.Add(new BsonElement("LangId", model.LangId)); docuement.Add(new BsonElement("Data." + model.key, model.value)); return(this.GetResponse(_entity.Find(model.ProjectName, docuement))); } catch (Exception ext) { return(this.GetResponse(ext)); } }