public QueryMapper(string formId) { query = new QueryModel(formId); foreach (PropertyInfo property in typeof(T).GetProperties()) { if (property.CanWrite) { IPropertyMapper mapper = mapperForProperty(property, formId); mapper.AddToQuery(query); mappers.Add(mapper); } } }