Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / ASP.NET MVC4 Дурацкие вопросы новичка. / 9 сообщений из 9, страница 1 из 1
29.04.2014, 07:58
    #38628383
VitGun
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP.NET MVC4 Дурацкие вопросы новичка.
Достался мне в наследство проект. Товарищ который пилил его до меня работал с базой напрямую, т.е. писал 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
29.04.2014, 10:12
    #38628492
VitGun
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP.NET MVC4 Дурацкие вопросы новичка.
сделал так
Модель
Код: 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
29.04.2014, 11:17
    #38628575
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP.NET MVC4 Дурацкие вопросы новичка.
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
29.04.2014, 14:00
    #38628863
VitGun
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP.NET MVC4 Дурацкие вопросы новичка.
hVostt,

Немного не то, но я уже сам разобрался. Спасибо.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
17.07.2015, 13:03
    #39009810
demox2642
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP.NET MVC4 Дурацкие вопросы новичка.
Дабы не плодить тем, а название темы шикарно, дополню тему своей проблемкой, сразу оговорю я новичок в этом деле "больших камней " просьба не кидать.
Собственно к проблеме:
Есть веб форма:
Код: 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
17.07.2015, 13:09
    #39009815
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP.NET MVC4 Дурацкие вопросы новичка.
demox2642, ничего не надо делать, данные должны передаваться, если где-то не проставляется атрибут disabled.
...
Рейтинг: 0 / 0
17.07.2015, 13:26
    #39009833
demox2642
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP.NET MVC4 Дурацкие вопросы новичка.
skyANA,

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


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