Форум программистов, компьютерный форум, киберфорум
Наши страницы
C#: ASP.NET MVC
Войти
Регистрация
Восстановить пароль
 
DenKG
5 / 5 / 7
Регистрация: 23.12.2015
Сообщений: 739
1

Как внести данные в таблицу, автоматически созданную EF?

07.01.2019, 18:20. Просмотров 250. Ответов 1
Метки нет (Все метки)

У меня есть два класса моделей:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
public class Book
    {
        public int Id { get; set; }
        public string BookName { get; set; }
        public string BookAuthor { get; set; }
 
        public virtual ICollection<Student> Students { get; set; }
 
        public Book()
        {
            Students = new List<Student>();
        }
    }
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
public class Student
    {
        public int Id { get; set; }
        public string StudentName { get; set; }
        public int StudentAge { get; set; }
 
        public virtual ICollection<Book> Books { get; set; }
 
        public Student()
        {
            Books = new List<Book>();
        }
    }
EF создает на основе этих двух классов еще одну таблицу в БД с названием BooksStudents.
Как мне внести в нее данные, если изначально она инициализируется таким вот образом:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
    public class LibDbInitializer : DropCreateDatabaseAlways<LibContext>
    {
        protected override void Seed(LibContext db)
        {
            Book b1 = new Book { BookName = "Война и мир", BookAuthor = "Л.Н.Толстой" };
            Book b2 = new Book { BookName = "Три мушкетера", BookAuthor = "А.Дюма", };
            Book b3 = new Book { BookName = "Идиот", BookAuthor = "Ф.М.Достоевский" };
 
            db.Books.Add(b1);
            db.Books.Add(b2);
            db.Books.Add(b3);
 
            db.Students.Add(new Student { StudentName = "Денис", StudentAge = 21, Books = new List<Book>() { b1, b2 } });
            db.Students.Add(new Student { StudentName = "Александр", StudentAge = 22, Books = new List<Book>() { b3, b1 } });
 
            db.SaveChanges();
        }
    }
Я предположил, что нужно сделать так:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
        [HttpPost]
        [ValidateAntiForgeryToken]
        public ActionResult Create([Bind(Include = "StudentId,BookId")] RentViewModel rentViewModel)
        {
            Book book = db.Books.Find(rentViewModel.BookId);
            Student student = db.Students.Find(rentViewModel.StudentId);
            if (ModelState.IsValid)
            {
                //а тут я застрял
                db.SaveChanges();
                return RedirectToAction("Index");
            }
            return View(student);
        }
Но дальше у меня что-то не получается
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.01.2019, 18:20
Ответы с готовыми решениями:

Как внести данные из Combobox и DateTimePicker в Таблицу
Таблица сделана в Access и подключена. Данные из эдитов записываются прекрасно, не могу разобраться...

Внести данные в таблицу Access
Здравствуйте! Необходимо внести данные в таблицу используя значения Edit1 и Edit2. При этом внести...

Внести данные в таблицу из экселя
Добрый день! Есть таблица документов и есть экселевский файлик с id документов и датой. Нужно...

Не получается внести данные в таблицу
Есть реально такая проблема.Вот разбираюсь с языком sql,вношу данные в таблицу, все просто,делаю...

Скопировать данные таблицы и перенести их в другую вновь созданную таблицу этой же БД
Программисты добрые, помогите! Есть бд, форма отображения- с шарп. Необходимо скопировать данные...

1
lvlkoo
.NET C#,ASP.NET MVC
Эксперт .NET
535 / 460 / 209
Регистрация: 16.10.2010
Сообщений: 1,842
Завершенные тесты: 2
07.01.2019, 21:35 2
Зачем? Это таблица реалищующая связь много ко многим.
Добавляйте запииси student.Books или book.Students.

А если хотите самостоятельно управлять таблицей - опишите ее сами
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.01.2019, 21:35

Внести данные из Мемо в таблицу по заданным полям
доброго времени суток. есть поле МЕМО. в нем через пробел указываются ПРИМЕР: 546786 Иванов...

Не получается внести данные в таблицу из консольного приложения
Пишу курсовой не получается добавить данные в таблицу Вот кусок кода в консольном приложении в...

Скопировать файл Word и внести в его таблицу данные. (из Excel)
Я прошу кинуть ссылку на какую-нибудь страничку или прямо здесь написать, как управлять файлами...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru