public CategoryWithGroupList Categories([FromUri] CategoryParam param) { if (param == null) { throw new ArgumentNullException("param"); } if (!(param.StartPoint.HasValue || (param.StartPointAlias == null))) { param.sp = new int?(CatalogProvider.GetGeoPointIdByAlias(param.StartPointAlias)); } return(new CategoryWithGroupList(ExcursionProvider.GetCategories(param.Language, param.StartPoint))); }