Что .Net Namespace содержит Entity для использования в общем хранилище? - PullRequest
1 голос
/ 08 апреля 2010

У меня есть вопрос, который мне стыдно задавать, но я все равно попытаюсь его решить.Я создаю общий репозиторий в asp.net MVC.На этом сайте я наткнулся на пример, который, как мне кажется, именно то, что я искал, но есть одна проблема.Он ссылается на объект - Entity - и я не знаю, в каком пространстве имен он находится. Я обычно создаю свои репозитории и использую Entity Framework, но я решил использовать универсальный репозиторий, потому что я использую один и тот же код в нескольких проектах снова и снова.

Вот код:

открытый интерфейс IRepository {void Save (ENTITY entity), где ENTITY: Entity;

void Delete<ENTITY>(ENTITY entity)
    where ENTITY : Entity;

ENTITY Load<ENTITY>(int id)
    where ENTITY : Entity;

IQueryable<ENTITY> Query<ENTITY>()
    where ENTITY : Entity;

IList<ENTITY> GetAll<ENTITY>()
    where ENTITY : Entity;

IQueryable<ENTITY> Query<ENTITY>(IDomainQuery<ENTITY> whereQuery)
    where ENTITY : Entity;

ENTITY Get<ENTITY>(int id) where ENTITY : Entity;

IList<ENTITY> GetObjectsForIds<ENTITY>(string ids) where ENTITY : Entity;

void Flush();

}

Можеткто-нибудь, пожалуйста, скажите мне, в каком пространстве имен находится Entity?Как вы можете сказать, в коде накладывается ограничение, поэтому он должен быть типом Entity.Я знаю, что в System.Data.Entity есть Entity, но это не то, что мне нужно.До этого у меня были случаи, когда я искал какое-то пространство имен, на которое у меня уходило целую вечность, но я искал и не могу найти подходящее пространство имен для правильного приведения моих общих предметов.Я мог бы разыграть его как класс и покончить с ним, но меня беспокоит, что я нигде не могу найти Entity.

Может ли кто-нибудь мне помочь .... пожалуйста ..... :-)

Вот ссылка на оригинальный пост. ASP.NET MVC: сколько репозиториев?

1 Ответ

0 голосов
/ 08 апреля 2010

Я думаю, что в примере, на который вы ссылаетесь, сущность является базовым интерфейсом, который должны быть реализованы всеми объектами, которые могут быть получены из хранилища.

Я НЕ верю, что это часть фреймворка, а часть решения Ричардода, которое он использует.

В этом примере это может быть так же просто, как просто определить тип используемого Id для всех элементов, хранящихся в хранилище.

1007 * например *

public interface Entity
{
  int Id {get; set;}
}

Доброжелательность,

Dan

...