|
using System;
using System.Linq.Expressions;
namespace Application.Core.Specification.Contract
{
/// <summary>
/// Base contract for Specification pattern with Linq and
/// lambda expression support
/// Ref : http://martinfowler.com/apsupp/spec.pdf
/// Ref : http://en.wikipedia.org/wiki/Specification_pattern
/// </summary>
/// <typeparam name="T"></typeparam>
public interface ISpecification<T> where T : class
{
/// <summary>
/// Check if this specification is satisfied by a
/// specific expression lambda
/// </summary>
/// <returns></returns>
Expression<Func<T, bool>> SatisfiedBy();
}
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.