powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / ASP.NET MVC4 Дурацкие вопросы новичка.
9 сообщений из 9, страница 1 из 1
ASP.NET MVC4 Дурацкие вопросы новичка.
    #38628383
VitGun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Достался мне в наследство проект. Товарищ который пилил его до меня работал с базой напрямую, т.е. писал SQL-запросы прямо в коде и при помощи SqlCommand выполнял их. Поскольку я раньше работал с MVC на Yii я знаю что это неправильно. Сижу изучаю и столкнулся с проблемой. Есть таблица Project_FAQ и PA_Project. Сделал для них классы
Модель
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
public class Project_FAQ
    {
        [Key]
        public int id { get; set; }
        public string short_name { get; set; }
        public string description { get; set; }        
        public int pa_project_id { get; set; }        //это ключ по которому связываем с таблицей PA_Project
     
    }



Контроллер
Код: c#
1.
2.
3.
4.
5.
        public ActionResult Create()
        {            
            ViewBag.pa_project_id = new SelectList(db.PA_Project, "id", "project_name");
            return View();
        } 



Вьюха
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
<form method="post" action="">
    <fieldset>
        Краткое описание
        

        @Html.TextArea("short_name")
        

        Проект:
        

        @Html.DropDownList("pa_project_id")
        

        Описание проблемы
        

        @Html.TextArea("description")
        

    </fieldset>
    <input type="submit" value="Записать" />
</form>


Собственно затык вот в чем. Теперь мне нужно вывести список из таблицы Project_FAQ подставив вместо поля pa_project_id поле project_name их таблицы PA_Project. Покажите на примере как это сделать. Спасибо.
...
Рейтинг: 0 / 0
ASP.NET MVC4 Дурацкие вопросы новичка.
    #38628492
VitGun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сделал так
Модель
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
public class Project_FAQ
    {
        [Key]
        public int id { get; set; }
        public string short_name { get; set; }
        public string description { get; set; }        
        public virtual PA_Project PA_PRoject { get; set; }        
        public int pa_project_id { get; set; }        
          
    }


Контроллер
Код: c#
1.
2.
3.
4.
        public ActionResult List()
        {            
            return View(db.project_faq.Include(c => c.PA_PRoject).ToList());
        }



но при таком подходе "ломается" вставка записей. при попытке добавить запись в таблицу я получаю "{"Имя столбца \"pa_project_id\" встречается несколько раз в списке столбцов результата."}".
...
Рейтинг: 0 / 0
ASP.NET MVC4 Дурацкие вопросы новичка.
    #38628575
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VitGunСобственно затык вот в чем. Теперь мне нужно вывести список из таблицы Project_FAQ подставив вместо поля pa_project_id поле project_name их таблицы PA_Project. Покажите на примере как это сделать. Спасибо.

проблема:

Код: c#
1.
2.
3.
4.
5.
        public ActionResult Create()
        {            
            ViewBag.pa_project_id = new SelectList(db.PA_Project, "id", "project_name");
            return View();
        } 



Решение:

Код: c#
1.
2.
3.
4.
5.
        public ActionResult Create()
        {            
            ViewBag.pa_project_id = new SelectList(db.PA_Project, "id", "project_name");
            return View(new Project_FAQ_ViewModel());
        } 



Код: c#
1.
2.
3.
4.
5.
6.
7.
    public class Project_FAQ_ViewModel
    {
        // public int id { get; set; } -- не нужен для вью модели
        public string short_name { get; set; }
        public string description { get; set; }        
        public int pa_project_id { get; set; }        //это ключ по которому связываем с таблицей PA_Project      
    }



Код: html
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.
@model Project_FAQ_ViewModel

<form method="post" action="">
    <fieldset>
        Краткое описание
        

        @Html.TextArea("short_name")
        

        Проект:
        

        @Html.DropDownList("pa_project_id")
        

        Описание проблемы
        

        @Html.TextArea("description")
        

    </fieldset>
    <input type="submit" value="Записать" />
</form>
...
Рейтинг: 0 / 0
ASP.NET MVC4 Дурацкие вопросы новичка.
    #38628863
VitGun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

Немного не то, но я уже сам разобрался. Спасибо.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
ASP.NET MVC4 Дурацкие вопросы новичка.
    #39009810
demox2642
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дабы не плодить тем, а название темы шикарно, дополню тему своей проблемкой, сразу оговорю я новичок в этом деле "больших камней " просьба не кидать.
Собственно к проблеме:
Есть веб форма:
Код: html
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.
34.
35.
36.
37.
<!DOCTYPE html>
<title>Отсутствие сотрудников</title>
<html lang="ru">
 
<head runat="server">

</head>
<body>
    

    <form name="Form2" method="post" action="http://10.47.0.220/project1/default.aspx?report_id=personnel_absence3" id="Form2" runat="server">
        <asp:DropDownList ID="lastname" name="lastname" value=""  runat="server" DataSourceID="SqlDataSource1" DataTextField="lastname" DataValueField="lastname"   >
        </asp:DropDownList>
                 <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:examws %>" ProviderName="<%$ ConnectionStrings:examws.ProviderName %>" SelectCommand="SELECT &quot;LASTNAME&quot; FROM &quot;DICT_EMPLOYEE&quot; WHERE (&quot;ID_FILIAL&quot; = :ID_FILIAL)">
            <SelectParameters>
                <asp:Parameter DefaultValue="2300" Name="ID_FILIAL" Type="Decimal" />
            </SelectParameters>
        </asp:SqlDataSource>

        <select name="isgrafic" size="1" id="Combobox1" style="position:absolute;left:218px; top:35px; width:328px;font-family:Courier New;font-size:16px;z-index:2">
            <option value="2">только факт</option>
            <option value="1">только план</option>
            <option value="%">все</option>
        </select>

        
        <input type="text" id="Editbox1" style="position:absolute;left:400px;top:24px;width:132px;font-family:Courier New;font-size:16px;z-index:5" name="lastname1" value="">
        

        <input type="submit" id="Button3" name="Button1" value="Сформировать" style="position:absolute;left:565px;top:22px;width:96px;height:25px;font-family:Arial;font-size:13px;z-index:6">
        <div id="wb_Text1" style="position:absolute;left:6px;top:100px;width:182px;height:19px;z-index:0;" align="center">
        </div>
    </form>
    

</body>
</html>



Цель данной формы: передача параметров в отчет.
В отчет передаются все параметры кроме Lastname- данные беруться из DropDownList.
Как сделать чтоб данные DropDownList передавались в отчет?
...
Рейтинг: 0 / 0
ASP.NET MVC4 Дурацкие вопросы новичка.
    #39009815
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
demox2642, ничего не надо делать, данные должны передаваться, если где-то не проставляется атрибут disabled.
...
Рейтинг: 0 / 0
ASP.NET MVC4 Дурацкие вопросы новичка.
    #39009833
demox2642
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
skyANA,

атрибут disabled нигде не стоит главное данные из lastname1 и isgrafic отправляются а lastname нет 8(
...
Рейтинг: 0 / 0
ASP.NET MVC4 Дурацкие вопросы новичка.
    #39009841
demox2642
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
хм... а как сделать так чтоб Editbox1 а соответственно и lastname1 принимали значение из DropDownList
...
Рейтинг: 0 / 0
ASP.NET MVC4 Дурацкие вопросы новичка.
    #39009888
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
demox2642хм... а как сделать так чтоб Editbox1 а соответственно и lastname1 принимали значение из DropDownList
Написать функцию на javascript и вызывать на смене значения в dropdownlist.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / ASP.NET MVC4 Дурацкие вопросы новичка.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]