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

Маршруты

20.04.2018, 14:51. Показов 665. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день, форумчане! Есть класс
C#
1
2
3
4
5
6
7
8
9
10
11
    public class AccountModel
    {
        [JsonProperty("AccountID")]
        public Guid AccountID { get; set; }
        [JsonProperty("PersonID")]
        public Guid PersonID { get; set; }
        [JsonProperty("Login")]
        public string Login { get; set; }
        [JsonProperty("Password")]
        public string Password { get; set; }
    }
А в контроллере есть метод UserPage().
C#
1
2
3
4
5
6
        [HttpPost]
        public ActionResult UserPage(AccountModel account, string action)
        {
 
            return View();
        }
Адрес страницы выглядит как ..../UserPage, а как настроить маршрутизацию, чтобы было .../UserPage/Login или .../UserPage/AccountID ?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.04.2018, 14:51
Ответы с готовыми решениями:

Структура "Маршруты", найти маршруты начинающиеся или оканчивающиеся в заданном пункте
Здравствуйте. Дано такое задание: "Написать программу, отладить ее, протестировать. При...

CISCO маршруты
Ребята не могу разобраться! Помогите! CISCO 2911 только учусь, знаний не википедия ... имеется два...

Статические маршруты
Есть схема настроеная с ospf в нее добавился физический канал...

Mikrotik маршруты
Подскажите добрые люди. Настроил vpn на базе mikritika, пользователи подключаются, все...

10
338 / 327 / 154
Регистрация: 29.10.2012
Сообщений: 949
20.04.2018, 17:53 2
Попробуйте так:
C#
1
2
3
4
5
[HttpPost, ActionName("Login")]
public ActionResult UserPage(AccountModel account, string action)
{
    return View();
}
0
0 / 0 / 0
Регистрация: 28.12.2013
Сообщений: 144
20.04.2018, 18:49  [ТС] 3
Что-то не получилось.
0
.NET C#,ASP.NET MVC
Эксперт .NET
594 / 507 / 224
Регистрация: 16.10.2010
Сообщений: 1,902
20.04.2018, 19:23 4
C#
1
2
3
4
5
6
        [Route("UserPage/Login"), HttpPost]
        public ActionResult UserPage(AccountModel account, string action)
        {
 
            return View();
        }
0
0 / 0 / 0
Регистрация: 28.12.2013
Сообщений: 144
20.04.2018, 20:10  [ТС] 5
Что-то не вышло. Адрес такой же и остался. Допустим логин равен "griboyedov". Будет ли адрес таким .../UserPage/griboyedov? Может в RouteConfig.cs добавить что-то нужно?
0
.NET C#,ASP.NET MVC
Эксперт .NET
594 / 507 / 224
Регистрация: 16.10.2010
Сообщений: 1,902
20.04.2018, 21:08 6
Ааа ну так бы и сказали) Я то думал вам статический роут нужен

Тогда это делаеться таким образом
C#
1
2
3
4
5
6
         [Route("UserPage/{accountName}", HttpPost)]
        public ActionResult UserPage(string accountName, AccountModel account, string action)
        {
            //get user by accountName
            return View();
        }
0
0 / 0 / 0
Регистрация: 28.12.2013
Сообщений: 144
21.04.2018, 12:23  [ТС] 7
Вроде делаю, как Вы говорите, но почему-то не выходит. Ссылка ..../UserPage так и осталась.
0
.NET C#,ASP.NET MVC
Эксперт .NET
594 / 507 / 224
Регистрация: 16.10.2010
Сообщений: 1,902
21.04.2018, 12:30 8
Вы что-то не договариваете

Покажите весь контроллер и вью, я вижу что вы тут только показали метод ПОСТ. Я так подозриваю что у вас еще есть метод ГЕТ. И на нем тоже нужно прописать патрибут Route
0
0 / 0 / 0
Регистрация: 28.12.2013
Сообщений: 144
23.04.2018, 08:23  [ТС] 9
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[Route("UserPage/{accountName}"), HttpPost]
        public ActionResult UserPage(AccountModel account, string action, string accountName)
        {
            
            JSONRepository<AccountModel> accountRepository = new JSONRepository<AccountModel>(Request.PhysicalApplicationPath + @"../Account.json");
            JSONRepository<PersonModel> personRepository = new JSONRepository<PersonModel>(Request.PhysicalApplicationPath + @"../Person.json");                        
                
                var accs = accountRepository.GetAll();
                AccountModel acc = accs.Find(a => (a.Login == account.Login && a.Password == account.Password));
 
                if (acc != null)
                {
                    accountName = acc.Login;
                    return View();
                }
                return View();                
      }
accountName изначально равен null.
0
.NET C#,ASP.NET MVC
Эксперт .NET
594 / 507 / 224
Регистрация: 16.10.2010
Сообщений: 1,902
23.04.2018, 12:32 10
Цитата Сообщение от lvlkoo Посмотреть сообщение
и вью
Вьюху покажите, форму, как вы делаете пост запрос
0
0 / 0 / 0
Регистрация: 28.12.2013
Сообщений: 144
23.04.2018, 13:02  [ТС] 11
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
@{
    ViewBag.Title = "Home Page";
}
 
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="stylesheet" href="~/bootstrap/css/bootstrap.css">
    <link rel="stylesheet" href="~/bootstrap/css/bootstrap.min.css">
    <link rel="stylesheet" href="~/bootstrap/font-awesome/css/font-awesome.min.css">
    <link rel="stylesheet" href="~/styles/video-chat.css">
    <title>Two Way Video Chat</title>
    <script type="text/javascript" src="~/libraries/flashphoner.js"></script>
    <script type="text/javascript" src="~/libraries/jquery/jquery-1.12.0.js"></script>
    <script type="text/javascript" src="~/libraries/js/utils.js"></script>
 
    <script type="text/javascript" src="~Scripts/application_scripts/conference.js"></script>
    <!-- Bootstrap JS -->
    <script src="~/bootstrap/js/bootstrap.js"></script>
    <script src="~/bootstrap/js/bootstrap.min.js"></script>
    <script>var _participants = 2</script>
</head>
<body>
    <div class="container">
        <div class="row">
            <h2 id="notifyFlash" class="text-danger"></h2>
            <div class="col-sm-12 text-center">
                <h2>Two Way Video Chat</h2>
            </div>
        </div>
    </div>
    @using (Html.BeginForm("UserPage", "Videochat", FormMethod.Post))
    {
        <div class="container" style="margin-top: 130px; margin-left:360px ">
            <div class="row">
                <div class="col-xs-12 col-sm-12 col-lg-6">
                    <div class="panel panel-primary">
                        <div class="panel-heading">
                            <h3 class="panel-title">Авторизация на сайте</h3>
                        </div>
                        <div class="panel-body">
                            <div class="row">
                                <div class="col-xs-6 col-sm-6 col-md-12 login-box">
                                    <form name="Form" role="form">
                                        <div class="input-group">
                                            <span class="input-group-addon"><span class="glyphicon glyphicon-user"></span></span>
                                            <input type="text" name="login" class="form-control" id="login" placeholder="Имя пользователя" required autofocus />
                                        </div>
                                        <div class="input-group">
                                            <span class="input-group-addon"><span class="glyphicon glyphicon-lock"></span></span>
                                            <input type="password" name="password" class="form-control" id="password" placeholder="Ваш пароль" required />
                                        </div>
                                        <p>
                                            <a href="#">Забыли свой пароль?</a>
                                        </p>
                                        У вас нет аккаунта? <a>@Html.ActionLink("Регистрация", "Registration", "VideoChat")</a>
                                    </form>
                                </div>
                            </div>
                        </div>
                        <div class="panel-footer">
                            <div class="row">
                                <div class="col-xs-6 col-sm-6 col-md-6">
                                    <input type="submit" name="action" value="Enter" class="btn btn-labeled btn-success"/>                                 
                                    <input type="submit" name="action" value="VK" class="btn btn-labeled btn-danger"/>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    }
</body>
</html>
0
23.04.2018, 13:02
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.04.2018, 13:02
Помогаю со студенческими работами здесь

Статические маршруты?
День добрый, сегодня под конец дня столкнулся с проблемкой, решить нахрапом не удалось, прошу...

Маршруты OSPF
Люди добрый помогите! Проблема вот в чем, есть роутер, на нем поднят OSPF. Процесс работает...

Не работают маршруты
Доброго времени суток! У меня возникла такая проблема. При открытии файла index.htm через...

MVC маршруты и БД
Только начал знакомится с MVС. В сети миллион примеров как реализовать MVC модель на примере...


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

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