internal override IReadOnlyCollection <ControlWork> ReadAll(Filter filter) { if (filter == null) { filter = new ControlWorkFilter(); } else if (filter.GetType() != typeof(ControlWorkFilter)) { throw new ArgumentException("Передаваемый фильтр не соответствует ожидаемому", "filter"); } List <ControlWork> output = new List <ControlWork>(); var drc = GetRowsUsingQuery(TableValuedFunctions.Tests.ControlWork_Read, filter.ToSqlParameters()); foreach (DataRow item in drc) { output.Add(new ControlWork( (int)item["AuthorUserId"], (string)item["Name"], (string)item["Description"], (int)item["TestTypeId"] )); } return(output); }
internal override GroupType Read(int id) { if (id <= 0) { throw new ArgumentException("Идентификатор меньше или равен нулю", "id"); } Filter filter = new ControlWorkFilter { Id = id }; return(ReadAll(filter).FirstOrDefault()); }