(Извините заранее, если вопрос глупый или очевидный - у меня нет большого опыта работы с Haskell ).
Есть ли способ выразить, что тип должен быть экземпляром класса типов более чем одним способом? Лучше всего это проиллюстрировать на примере (который, вероятно, несколько глуп): в математике мы можем сказать, что полукольцо - это набор, который является коммутативным моноидом при выполнении одной операции (которую мы назовем сложением, тождество 0), а моноид - при выполнении одной операции. другой (который мы назовем умножением) наряду с требованиями, которые умножение распределяет по сложению и что 0 аннигилирует все элементы при умножении. Последние части здесь не важны.
Предположим теперь, что у меня есть класс типов Monoid
(не путать с Data.Monoid
),
class Monoid m where
unit :: m
operation :: m -> m -> m
и я хочу создать класс типов Я пытаюсь сформулировать запрос LINQ для выбора подсписка списка, в котором он соответствует условию where, например так: где Base - это просто класс Entity: Я получаю сообщение об ошибке «Невозможно неявно преобразовать тип System.Collections.Generic.IEnumerable в System.Collections.Generic.List Итак, я попытался применить оператор Cast, но это не удалось. Теперь я вижу, что я не трогаю чтобы преобразовать тип элемента. Как я могу решить эту проблему? Спасибо! Semiring
. Из определения, данного выше, я хотел бы сказать "
List List<Entities.Base> bases = this.GetAllBases();
List<Entities.Base> thebases = from aBase in bases
where aBase.OfficeCD == officeCD
select aBase;
public string BaseCD { get; set; }
public string BaseName { get; set; }
public string OfficeCD { get; set; }
public DateTime EffectiveDate { get; set; }
public DateTime ExpirationDate { get; set; }