Маршрутный идентификатор блога с видом на блог в MVC - PullRequest
0 голосов
/ 11 марта 2020

Я хочу иметь возможность щелкнуть ссылку в блоге и открыть блог, показывающий страницу этого конкретного c блога. Моя конфигурация маршрута принимает необязательные параметры идентификатора. Я делаю это также с AJAX, так что надеюсь нажать на ссылку в блоге и вернуться в BlogController. Я искал вокруг, но не могу найти то, что мне помогает ..

Вот мой код

CSHTML

@foreach (var blodID in blogCont)
{
    <a href="??" id="blogHREF" blog-id="@blodID.blogID">
        Text
    </a>
}

AJAX

$(document).on("click", "#blogHREF", function () {
    var retBlogID = $(this).attr("blog-id");

    var blogData = {
        blogID: retBlogID
    }

    $.ajax({
        type: "GET",
        url: "Blog/getBlog",
        data: blogData
    });
});


C#   

public class BlogController : Controller
{
    public ActionResult Index()
    {
        return View();
    }

    [HttpGet]
    public ActionResult getBlog(blogTable blogged)
    {
        return View(blogged.blogAuthor);
    }

}

1 Ответ

0 голосов
/ 11 марта 2020

Если вы просто переходите на новую страницу (как подсказывает ваш вопрос), я бы просто использовал html помощник.

@Html.Action("getBlog", "Blog", new {blogged = blodID })

Так вот:

<a href="??" id="blogHREF" blog-id="@blodID.blogID">
    Text
</a>

было бы так:

<a href="@Html.Action("getBlog", "Blog", new {blogged = blodID })" id="// THIS HAS TO BE UNIQUE">
    Text
</a>

Это предполагает, что blodID является blogTable.

Удалите [HttpGet], нам это не нужно.

Также стоит отметить, что id на вашем теге <a> не считает меня уникальным значением. Они должны быть уникальными. Неважно, где вы используете Id в HTML.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...