Ошибка при использовании ненавязчивого ajax в mvc 3

Я пытаюсь сделать запрос ajax из своего представления, которое будет публиковать и одновременно получать некоторые данные. Я хочу использовать полученные данные для обновления содержимого div на этой странице просмотра. Вот код:

Мой взгляд:

<div id="NewComment" style="height: auto; width: 850px; background-color: Silver;
    margin-top: 10px;">
    @{
        AjaxOptions ajaxopts = new AjaxOptions { UpdateTargetId = "Comments" };
    }
    @using (Ajax.BeginForm("NewComment", ajaxopts))
    {
        @Html.ValidationSummary()
        <span style="margin-left: 10px">
            @Html.TextAreaFor(x => x.Comments.Comments, new { @class = "Comment" })
        </span>
        @Html.TextBoxFor(x => x.Posts.PostID, new { @class = "PID" })

        <br />
        <span style="margin-left: 10px">
            <input type="submit" value="Post" style="height: 50px; width: 100px; text-align: center;
                font-size: larger" /></span>

    }
</div>
<div id="Comments">
    @{
        if (Model.CommentList != null)
        {
            foreach (var y in Model.CommentList)
            {
        <div id="DisplayComment" style="height: auto; width: 500px; background-color: #559988;
            margin-top: 10px; margin-left: 10px;">
            @y.UserName says:
            <br />
            @y.Comment1
            <br />
        </div>
            }
        }
        else
        {
        <div id="DisplayNoComment" style="height: auto; width: 500px; background-color: Yellow;
            margin-top: 10px; margin-left: 10px;">
            @Html.Label("Be First to make a comment")
        </div>
        }
    }
</div>

Мой контроллер:

[HttpPost]
    public ActionResult NewComment(PostComment model)
    {
        var business = new Business();
        var entity = new Comment();

        //**For inserting comments
        entity.Comment1 = model.Comments.Comments;
        entity.PostID = model.Posts.PostID; 
        entity.UserID = business.GetUserID(User.Identity.Name);
        entity.UserName = User.Identity.Name;

        business.PostComment(entity);
        //For inserting comments**


        //**for getting comments
        var viewmodel = new PostComment();
        if (business.GetAllComment(model.Posts.PostID) == null)
        {
        }
        else
        {
            viewmodel.CommentList = business.GetAllComment(model.Posts.PostID);
        }
        //for getting comments**

        return View("Comments", viewmodel);
    }

Я возвращаю частичное представление с именами комментариев с необходимыми данными, все работает нормально, но есть проблема с проводным подключением. Хотя я не использую какую-либо главную страницу в моем частичном представлении, но все же она показывает главную страницу формы содержимого. Таким образом, исходная страница просмотра дважды отображает содержимое главной страницы, например верхний и нижний колонтитулы. Пожалуйста помоги.


person user1784622    schedule 30.10.2012    source источник


Ответы (1)


На ваш взгляд, добавьте следующую строку кода вверху

@{
   Layout = null;
}
person Yasser Shaikh    schedule 30.10.2012
comment
Это сработало! но поскольку я не упомянул об использовании какой-либо главной страницы, почему она до сих пор ее использует? - person user1784622; 30.10.2012