Skip to content

Remove Query from ISpecification interface #535

@fiseni

Description

@fiseni

Having the Query property exposed in the ISpecification interface does not make much sense. The ISpecificationBuilder builder and all the extensions depend on the concrete Specification implementation. So, if anyone has custom spec implementation, forcing them to implement the builder (which depends on our spec implementation) is nonsense. Let's remove it from the interface.

PS. The ISpecification<T> is literally useless, it causes more problems than it solves, and I wish we didn't have it at all. But it's been there since version 1, and it's hard to remove it now. In my opinion, you should avoid it in your code. Just pass the concrete implementation around. You won't get any benefit just by using the interface.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions