Форум программистов, компьютерный форум, киберфорум
Наши страницы
C#: ASP.NET MVC
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C# MVC Калькулятор стоимости сайта http://www.cyberforum.ru/asp-net-mvc/thread815873.html
Здравствуйте! Требуется сделать калькулятор стоимости сайта аналогичный этому http://wcalc.sinc.ru/. Подскажите пожалуйста с чего хотя бы начать- как хранить стоимость каждой услуги в зависимости от...
C# MVC asp.net и ext js
Сразу извиняюсь если написал не в ту тему =/ Есть задача: Создать простенькую форму с помощью которой можно изменять данные в БД. Реализация: 1) Создал в Microsoft SQL Server 2008 R2 новую таблицу...
C# MVC Метод Get и Post
Доброго времени суток. Читаю учебник по ASP.NET MVC. Подскажите, в чем разница между Get и Post? Гуглил, но так и не понял русским языком, что для чего надо? Сейчас рассматриваю пример такой: ...
C# MVC Не работают скрипты при переносе проекта в сеть Добрый день, у меня есть проект, он вполне нормально функционирет на моем компе, в том смысле , что все js скрипты работают, а вот когда я пытаюсь выложить сайт в сеть, почему то не работает мой... http://www.cyberforum.ru/asp-net-mvc/thread815674.html
C# MVC DropDownListFor как получить выделенное значение http://www.cyberforum.ru/asp-net-mvc/thread814854.html
Добрый день Подскажите пожалуйста как получить выделенное значение DropDownListFor Создаю его вот так @Html.DropDownListFor(m => m.SelectedIdVes, new SelectList(Model.Boats, "id_ves", "ves)...
Многомерное меню из БД ASP.NET MVC 4 C# MVC
Здравствуйте. Недавно перешел с пхп на ASP.NET MVC. Все понятно. Удобно.Красиво. Но столкнулся с проблемой - не могу сформировать и вывести дерево меню, хранящееся в БД. Искал в гугле, на мсдн....
C# MVC Несколько представлений для одного контроллера
Добрый день, у меня такой вопрос: создала простой контроллер: using System; using System.Collections.Generic; using System.Data; using System.Data.Entity; using System.Linq; using...
C# MVC asp.net mvc, форма редактирования сущности Всем привет! Тут такое дело, как известно создать форму для редактирования сущности (entity) не сложно, сделал вьюху со строгой типизацией по нужной сущности и выбрал шаблон Edit и все, форма готова.... http://www.cyberforum.ru/asp-net-mvc/thread813485.html
C# MVC Важен ли для работы SQL или можно сразу начинать с изучения MVC4? http://www.cyberforum.ru/asp-net-mvc/thread812909.html
Смотрю по вакансиям, что для ASP.NET MVC 4 требуются знания SQL. SQL очень важен для работы или можно сразу начинать с изучения MVC4? Если параллельно оба изучать, то мне кажется, что за двумя...
C# MVC EntityFramework, CodeFirst. Организация отношений между моделями Вопрос по нижеследующему коду. Если модель "Один" ссылается на модель "Два", то модель "Два" обязана ссылаться на модель "Один"? То есть я не могу убрать ссылку на Question в модели Answer и... http://www.cyberforum.ru/asp-net-mvc/thread812667.html
Betankor
9 / 9 / 3
Регистрация: 23.02.2013
Сообщений: 51
24.03.2013, 17:55  [ТС] 0

Создание Entity Data Model на основе базы данных

24.03.2013, 17:55. Просмотров 2006. Ответов 3
Метки (Все метки)

Ответ

Отчасти проблему решил, написал все вручную. Но возник другой вопрос. В целом наверное достаточно простой, но я что-то торможу. Но, обо всем по порядку. Суть проста. Мы в форме указываем класс бетона, а нам из базы данных выводятся характеристики.
Форма для запроса (код класса не привожу, так как в нем только одно свойство для класса бетона):
HTML5
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
<div>
    @using (Html.BeginForm())
    { 
            <div class="sourceDataMat">Класс бетона:</div>
            <p>@Html.DropDownListFor(x => x.BClass, new[] {
                       new SelectListItem() {Text = "B7.5", Value = "B7.5", Selected = true},
                       new SelectListItem() {Text = "B10", Value = "B10"},
                       new SelectListItem() {Text = "B12.5", Value = "B12.5"},
                       new SelectListItem() {Text = "B15", Value = "B15"},
                       new SelectListItem() {Text = "B20", Value = "B20"},
                       new SelectListItem() {Text = "B22.5", Value = "B22.5"},
                       new SelectListItem() {Text = "B25", Value = "B25"},
                       new SelectListItem() {Text = "B27.5", Value = "B27.5"},
                       new SelectListItem() {Text = "B30", Value = "B30"},
                       new SelectListItem() {Text = "B35", Value = "B35"},
                       new SelectListItem() {Text = "B40", Value = "B40"},
                       new SelectListItem() {Text = "B45", Value = "B45"},
                       new SelectListItem() {Text = "B50", Value = "B50"},
                       new SelectListItem() {Text = "B55", Value = "B55"},
                       new SelectListItem() {Text = "B60", Value = "B60"},
                       new SelectListItem() {Text = "B65", Value = "B65"},
                       new SelectListItem() {Text = "B70", Value = "B70"},
                       new SelectListItem() {Text = "B75", Value = "B75"},
                       new SelectListItem() {Text = "B80", Value = "B80"}
            })</p>
            <input type="submit" value="Подобрать" />
    }
</div>
Класс HBetonChar с необходимыми свойствами:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
 
namespace ExCon.Models
{
    public class HBetonChar
    {
        public virtual int id { get; set; }
        public virtual string BetonClass { get; set; }
        public virtual float RbnRbser { get; set; }
        public virtual float RbtnRbtser { get; set; }
        public virtual float Rb { get; set; }
    }
}
Класс, производный от DbContext для соединения с базой:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
using System;
using System.Collections.Generic;
using System.Data.Entity;
using System.Linq;
using System.Web;
 
namespace ExCon.Models
{
    public class ExConContext : DbContext
    {
        public ExConContext()
            : base("ExConstruction")
        { }
 
        public DbSet<HBetonChar> BetonChar { get; set; }
    }
}
Контроллер:
C#
1
2
3
4
5
6
7
8
[HttpPost]
        public ViewResult KJ(Arming arming)
        {
            ViewBag.BClass = arming.BClass; // именно класс Arming я не приводил в начале, так как в нем одно свойство
            ExConContext exdb = new ExConContext();
            ViewBag.Beton = exdb.BetonChar.ToList();
            return View("SourceData"); // сюда особо внимание не обращайте, часть кода удалил, чтобы только основное оставить.
        }
Ну и представление SourceData:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<div style="margin-top: 10px;">
    <h3>Материалы</h3>
    <div>Класс бетона: @ViewBag.BClass</div>
    <br />
    @foreach (var p in ViewBag.Beton)
    {
        if (p.BetonClass == @ViewBag.BClass)
        { 
        <div>Сопротивления R<sub>bn</sub>, R<sub>bser</sub>: @p.RbnRbser</div>
        <div>Сопротивления R<sub>btn</sub>, R<sub>btser</sub>: @p.RbtnRbtser</div>
        <div>Сопротивление R<sub>b</sub>: @p.Rb</div>
        }
    }
</div>
Насколько я понимаю, сейчас я сделал по-тупому. То есть вначале все из базы выбрал строкой "ViewBag.Beton = exdb.BetonChar.ToList();" а затем уже начал обрабатывать коллекцию. Наверняка ведь есть какой-то способ, благодаря которому можно переданный arming.BClass использовать для выборки необходимой строки из базы?
Подскажите пожалуйста, кто знает. Спасибо.

Вернуться к обсуждению:
Создание Entity Data Model на основе базы данных
0
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.03.2013, 17:55

Восстановление элемента ADO.NET Entity Data Model
Всем доброго время суток. Я переустановил Visual Studio 2010 после этого у меня возникла проблема....

Найти пункт ADO.NET Entity Data Model
Доброго времени суток, Господа. Возникла проблемка с VS 2017. В проекте, когда нажимаю правой...

Entity Data Model (Как создать базу из схемы?)
Нужно создать базу данных имея модель edmx. Единственное что получилось сделать - создать edmx.sql...

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