Мне кажется, что я сталкиваюсь с проблемой архитектуры, которую могу решить:
Сначала я занимаюсь разработкой веб-приложения с использованием кода платформы сущностей (v4.3 beta1).Также опубликовано несколько веб-сервисов.
В отдельной библиотеке классов у меня есть DbContext и все сущности.Ссылка на эту библиотеку явно указана веб-приложением.
В библиотеке «Данные» есть статическое свойство для хранения контекста:
namespace MMOrpheus.Lib
{
public class Context
{
public static MMOrpheusDB MMO
{
get
{
if (HttpContext.Current != null && HttpContext.Current.Session["MMOEntities"] == null)
{
HttpContext.Current.Session["MMOEntities"] = new MMOrpheusDB();
}
return HttpContext.Current.Session["MMOEntities"] as MMOrpheusDB;
}
set
{
if (HttpContext.Current != null)
HttpContext.Current.Session["MMOEntities"] = value;
}
}
}
}
MMOrpheusDB наследуется от DbContext.
Так что проблема в том, что я как-то чувствую, что это неправильно.Помимо прочего, я не думаю, что этот класс Context должен использовать System.Web!
Есть предложения по организации этого проекта?