using System.Collections.Generic;
class MockRepository : IRepository
IList<MyEntity> _myEntities;
_myEntities = new List<MyEntity>()
ID = 1, Title = "My Entity One"
ID = 2, Title = "My Entity Two"
ID = 3, Title = "My Entity Three"
public IEnumerable<MyEntity> Get()
public static void Main()
const string EXPECTED = "My Entity One";
IMyService svc = new MyService(new MockRepository());
var actual = svc.GetEntity(1);
Console.Write("Expected: {0} | Actual: {1} | Test result: {2}", EXPECTED, actual.Title, EXPECTED.Equals(actual.Title));
Console.WriteLine(" ==== {0}", Convert.ToBase64String(Encoding.UTF8.GetBytes("My Value")));
public interface IMyService
MyEntity GetEntity(int entityId);
IEnumerable<MyEntity> GetAllEntities();
public sealed class MyService : IMyService
public MyService(IRepository repository)
_repository = repository;
public MyEntity GetEntity(int entityId)
var entities = GetAllEntities();
var entity = entities.SingleOrDefault(e => e.ID == entityId);
ID = -1, Title = "New Entity"
public IEnumerable<MyEntity> GetAllEntities()
var entities = _repository.Get();
entities = entities.Where(e => !string.IsNullOrEmpty(e.Title));
public interface IRepository : IDisposable
IEnumerable<MyEntity> Get();