Форум программистов, компьютерный форум, киберфорум
C#: ASP.NET MVC
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
4 / 4 / 1
Регистрация: 17.09.2013
Сообщений: 179
1

Отношение Многие ко Многим

07.04.2016, 21:09. Показов 846. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день, недавно начал осваивать Асп.нет, и хотелось бы реализовать связь многие ко многим.
Делаю все согласно примером найденным в инете, и в контекстном классе отсутствует метод WithMany, но есть метод withone.

Скажите пожалуйста, что я делаю не так?


Т.е. образец
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
modelBuilder.Entity<Customer>()
        .HasMany(c => c.Products)
        .WithMany(p => p.Customers)
        .Map(m =>
        {
            // Ссылка на промежуточную таблицу
            m.ToTable("Orders");
 
            // Настройка внешних ключей промежуточной таблицы
            m.MapLeftKey("CustomerId");
            m.MapRightKey("ProductId");
        });
}
И мои классы, с которыми пытаюсь работать.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNet.Identity.EntityFramework;
using Microsoft.Data.Entity;
 
namespace WebApplication2.Models
{
    public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
    {
        public DbSet<ApplicationUser> ApplicationUsers { get; set; }
        public DbSet<Caretaker> CareTakers { get; set; }
        public DbSet<Child> Children { get; set; }
        public DbSet<Fee> Fees { get; set; }
        public DbSet<Feetype> Feetypes { get; set; }
        public DbSet<Message> Messages { get; set; }
        public DbSet<Photo> Photos { get; set; }
 
        protected override void OnModelCreating(ModelBuilder builder)
        {
            base.OnModelCreating(builder);
 
       //
          builder.Entity<Caretaker>().HasMany(c => c.Children).
    //      .WithMany(s => s.ApplicationUsers)
          .Map(t => t.MapLeftKey("CourseId")
          .MapRightKey("StudentId")
          .ToTable("CourseStudent"));
 
        }
    }
}

и два логических класс(конструкторы убрал для краткости)

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
namespace WebApplication2.Models
{
 
    public class Caretaker
    {
 
        [ScaffoldColumn(false)]
        public int CareTakerID { get; set; }
 
        public Gender Gender { get; set; }
        public string Name { get; set; }
        public string LastName { get; set; }
        public DateTime Bday { get; set; }
        public string Email { get; set; }
        public string Phone { get; set; }
 
 
 
        public virtual ICollection<Child> Children { get; set; }
    }
}

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
namespace WebApplication2.Models
{
 
  public enum Gender { Male, Female }
 
    public class Child
    {
 
 
        [ScaffoldColumn(false)]
        public int ChildID { get; set; }
 
        public String Name { get; set; }
        public String LastName { get; set; }
 
        public Gender Gender { get; set; }
 
        public DateTime Bday { get; set; }
 
 
        public virtual ICollection<Photo> Photos { get; set; }
        public virtual ICollection<Caretaker> Caretakers { get; set; }
        public virtual ICollection<ApplicationUser> ApplicationUsers { get; set; }
 
        public ICollection<Fee> Fees { get; set; }
}
}
Добавлено через 4 часа 50 минут
Проблема была очень глупой, дело в том,, что визуалка поставила 7 версию ентитиФреймверка.
А она сырая ещё.

Вот решение
http://stackoverflow.com/quest... -framework
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.04.2016, 21:09
Ответы с готовыми решениями:

Отношение многие-ко-многим ASP.NET MVC
Доброго времени суток, коллеги. Возникла ситуация, когда мне необходимо установить отношение...

Модель со связью многие-ко-многим
Уже голова кругом :wall: (Учусь на MVC 5) Есть класс User и Command со связью многие ко многим. ...

Сохранение данных со связью многие-ко-многим
Здравствуйте, делаю сохранение данных, связь многие-ко-многим, то есть, например, у меня есть...

Entity framework, связь многие ко многим
Доброго времени суток ! Зарание извиняюсь если поместил тему не в тот раздел. Вопрос такой у...

1
6 / 6 / 5
Регистрация: 21.03.2014
Сообщений: 18
11.04.2016, 19:10 2
EF 7 еще не поддерживает many-to-many. Пока предлагают мапить many-to-many как две one-to-many.
http://docs.efproject.net/en/l... ny-to-many
0
11.04.2016, 19:10
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.04.2016, 19:10
Помогаю со студенческими работами здесь

Реализация связи многие ко многим в WebApi
В мене є дві моделі - книжка і автор. Коли створюємо книжку можемо вибрати кілька авторів. В...

Создание сущности со саязью многие ко многим
Вопросы по ado.net: 2 сущности: юзер и проект связь многие ко многим. как сделать так...

Представление. Создание связи многие-ко-многим
Добрый день! Недавно начал изучать MVC. Возник такой вопрос: как в представлении создать связь...

Заполнение таблиц с связью многие-ко-многим
Есть две таблицы Artists и Performers. Между ними установлена связь многие ко многим и...

Фильтр записей через таблицу многие ко многим
Привет. Есть три таблицы Goods, Categories и GoodsCategories. Последняя связана так - CREATE...

Entity Famework не загружает коллекции элементов в связи многие ко многим
Доброго времени суток. У меня имеется следующая схема БД, сгенерированная Entity Framework. Для...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru