Ссылка на EntityBase и IAggregateRoot не найдена?

Я пытаюсь создать репозиторий, поэтому нашел эта ссылка объяснила очень хорошо, но я получил ошибку

Ошибка 1 Не удалось найти имя типа или пространства имен «EntityBase» (вам не хватает директивы использования или ссылки на сборку?)

Ошибка 2. Не удалось найти тип или имя пространства имен «IAggregateRoot» (вам не хватает директивы using или ссылки на сборку?)

Мой код

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
using System.Linq.Expressions;

namespace DapperAndSQLite
{
    public interface IRepository<T> where T : EntityBase, IAggregateRoot
    {
        void Add(T item);
        void Remove(T item);
        void Update(T item);
        T FindByID(Guid id);
        IEnumerable<T> Find(Expression<Func<T, bool>> predicate);
        IEnumerable<T> FindAll();
    }
}

Вот Скриншот (Чтобы показать сборку или чего-то не хватает)

введите здесь описание изображения

Я что-то пропустил ?


person Muhammad Usman    schedule 14.10.2015    source источник
comment
Вам нужно добавить этот интерфейс и EntityBase в свой проект. Получите их отсюда github.com/bbraithwaite/SmsQuiz/ дерево/мастер/источник/   -  person vendettamit    schedule 14.10.2015
comment
@vendettamit: вы можете добавить ответ, я приму :)   -  person Muhammad Usman    schedule 14.10.2015


Ответы (2)


Вы не добавили интерфейс IAggregateRoot и EntityBase в свой проект. Исходный код указанной статьи размещен на github здесь.

Добавьте интерфейс и базовый класс из здесь.

person vendettamit    schedule 14.10.2015

1) Вы никогда не должны размещать интерфейсы репозитория в проектах Infrastructure, они принадлежат Домену.

2) Эта EntityBase и IAggregateRoot должны оставаться внутри проекта Domain.

3) Вы должны добавить ссылку на проект Domain в Infrastructure.DapperAndSQLite и внедрить эти репозитории.

person Fals    schedule 14.10.2015