Ответы пользователя по тегу Entity Framework
  • Каков наиболее оптимальный подход к созданию ViewModel?

    @kttotto
    пофиг на чем писать
    Наверное я не совсем что-то понял... ViewModel обозначают модели, которые будут уходить во вьюшку, для отображения там информации. Зачем в одну вьюмодел инкапсулировать другую? Эти модели в основном содержат только необходимую инфу для вьюшки и никакой логики. Если в доменной модели Вам списки авто не нужны, то не стоит их там и делать. Нужно инициализировать вьюмодел нужным списком и эту модель отдавать уже вьшке. Вьюмодел инициализируется либо вручную доменной моделью, либо автомапером.
    Ответ написан
    4 комментария
  • Как получить данные из связанной таблицы Entity Framework?

    @kttotto
    пофиг на чем писать
    Немного странный код Вы привели. А можно увидеть код Вашего dbContext?

    Если Вы используете codfirst, то таблицы связываются настройкой модели через создание виртуальных свойств у модели с указанием внешних ключей и при необходимости настраиваются атрибутами или Fluent API. Тогда данные будут подтягиваться автоматом dbContext.Bid.UserCreated.Id
    Ответ написан
    Комментировать
  • Как использование Moq для тестирования репозиториев?

    @kttotto
    пофиг на чем писать
    Вы отвечаете на свой вопрос, прежде чем его задать)

    При тестировании мокают объекты, чтобы разорвать внешние зависимости.

    Необходимо мокать объекты, от которых тестируемый метод зависит, чтобы не тестировать эти самые объекты. Тогда мы будем тестировать только реализацию самого метода. Мы подразумеваем, что эти объекты работают правильно и действую так, как мы того от них ожидаем. Это значит, что мы можем настроить ожидаемое от них поведение.
    mock.Setup(x=>x.Users).Returns(new List<Users>(){ ... }

    Т.е. мы точно знаем, что при обращении к нашему зависимому объекту через Users нам вернется весь список наших пользователей, причем точно знаем каких. Благодаря абстрагированию от зависимостей, если тестируемый метод провалится, то мы точно будем знать, что виновата реализация метода, а не реализация зависимостей.

    В случае тестирования с конкретными зависимыми объектами, мы такого сказать не сможем. Потому что мы точно не можем знать, какие сущности есть в БД, что есть соединение с БД и что сама БД нормально работает.
    Ответ написан
    Комментировать
  • Почему EF не хочет сохранять сущность?

    @kttotto Автор вопроса
    пофиг на чем писать
    Вопрос решен. Действительно создавалось два контекста. Только ошибка была не в ninject, а в моей реализации DataManger. Получалось, что сущность была в одном контексте, а внешний ключ указывал на сущность в другом контексте. Вот оно и не хотело сохраняться.

    Всем спасибо за соучастие)
    Ответ написан
    Комментировать
  • Как в EF настроить одну сущность с двумя внешними ссылками на другую сущность?

    @kttotto Автор вопроса
    пофиг на чем писать
    Ответ найден. Решилось таким способом
    [InverseProperty("OwnerStage")]
    public virtual ICollection<Motion> Motions { get; set; }
    Ответ написан
    Комментировать
  • Entity Framework связь элементов одной таблицы, чяднт?

    @kttotto
    пофиг на чем писать
    Чтобы увидеть какой запрос формирует Entity, в конфиг, в раздел entity, надо добавить
    <
    <interceptors>
          <interceptor type="System.Data.Entity.Infrastructure.Interception.DatabaseLogger, EntityFramework">
            <parameters>
              <parameter value="C:\temp\LogOutput.txt" />
              <parameter value="true" type="System.Boolean" />
            </parameters>
          </interceptor>
        </interceptors>


    И как то странно Вы связь устанавливаете. Завязываете таблицу саму на себя? Указывая для таблицы связь, Вы должны указать в какой таблице будет внешний ключ на Вашу сущность. Во общем мапинг в таком виде работать не будет.
    Ответ написан
    Комментировать
  • Как быть с моделями в ASP.NET MVC?

    @kttotto
    пофиг на чем писать
    Станислав правильно сказал: смотря что называть моделью. Те классы, которые генерит EF, вполне можно называть моделями и даже добавить им логику, может даже какие-то атрибуты. Главное, чтобы все добавки не противоречили тем соответствиям, что EF установил.
    Ответ написан
    Комментировать
  • Как минимизировать нагрузку на сервер для чата на ASP.NET MVC с SignalR?

    @kttotto
    пофиг на чем писать
    У меня точно такой же вопрос стоит уже вторую неделю, только в другом контексте. Мониторинг GPS трекеров. Есть серверная часть, которая по UDP протоколу получает сообщение от трекера и которая так же имеет доступ к БД, чтоб понять кому принадлежит трекер, затем сообщение уходит на хаб SignalR для отсылки веб-клиенту. Получается что у меня два конекшина к базе, от сервера с сайтом (ASP.NET MVC) и от сервера с хабом. И тоже думаю как сделать одно соединение, чтоб базу меньше напрягать, и тоже кручусь вокруг WCF или Web API.
    Ответ написан
    Комментировать