How to refresh a page in MVC
<p>I found out that my page <strong>actually</strong> reload/refresh, but require additional reload to see the content I just added. However I've to reload <strong>again</strong> to see the data, <strong>OR</strong> add another data to see the previous data.. </p>

<p>I added my controller code below:</p>

<p><strong>(CreateComment</strong> and <strong>Comment</strong>(display comments) are inside <strong>Details</strong>(details about book) View <strong>)</strong></p>

<p><strong>CreateComment</strong>:</p>

<pre><code>    public ActionResult CreateComment(Guid id) {
        return View(new CommentToBook { BookId = id });
    }

    [HttpPost]
    public ActionResult CreateComment(CommentToBookVm model) {
        if (ModelState.IsValid) {
            var m = new CommentToBook { Comment = model.Comment, BookId = model.BookId };
            m.UserId = new Guid(Session["UserID"].ToString());
            m.CreatedDate = DateTime.Now;
            db.CommentToBooks.Add(m);
            db.SaveChanges();

        }
        return View(model);
    }
</code></pre>

<p><strong>View for createComment</strong></p>

<pre><code>@using (Html.BeginForm()) 
{
    @Html.AntiForgeryToken()
    @Html.HiddenFor(s =&gt; s.BookId)

&lt;div class="form-horizontal"&gt;
    &lt;hr /&gt;
    @Html.ValidationSummary(true, "", new { @class = "text-danger" })

    &lt;div class="form-group"&gt;
        @Html.LabelFor(model =&gt; model.Comment, htmlAttributes: new { @class = "control-label col-md-2" })
        &lt;div class="col-md-10"&gt;
            @Html.EditorFor(model =&gt; model.Comment, new { htmlAttributes = new { @class = "form-control" } })
            @Html.ValidationMessageFor(model =&gt; model.Comment, "", new { @class = "text-danger" })
        &lt;/div&gt;
    &lt;/div&gt;

    &lt;div class="form-group"&gt;
        &lt;div class="col-md-offset-2 col-md-10"&gt;
            &lt;input type="submit" value="Create" class="btn btn-default" /&gt;
        &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;
</code></pre>

<p><strong>Details (have Comment and CreateComment inside)</strong></p>

<pre><code>public ActionResult Details(Guid? id) {

        Book book = db.Books.Find(id);

        return View(book);
    }
</code></pre>

<p>View</p>

<pre><code>&lt;h2&gt;Details&lt;/h2&gt;

@Html.Action("Rating", new { id = Model.Id })
&lt;div&gt;


    &lt;h4&gt;Books&lt;/h4&gt;
    &lt;hr/&gt;
    &lt;dl class="dl-horizontal"&gt;
        &lt;dt&gt;
            @Html.DisplayNameFor(model =&gt; model.Title)
        &lt;/dt&gt;

        &lt;dd&gt;
            @Html.DisplayFor(model =&gt; model.Title)
        &lt;/dd&gt;
 @*and so on...*@

   &lt;/dl&gt;
&lt;/div&gt;

@Html.Action("Comment", new { id = Model.Id })
@Html.Action("CreateComment", new { id = Model.Id })
</code></pre>

<p><strong>And the Comment to list all comments.</strong></p>

<pre><code>public ActionResult Comment(Guid? id) {

                var comment = db.CommentToBooks.Where(c =&gt; c.BookId == id);

                return View(comment.ToList());
            }
</code></pre>

<p>view:</p>

<pre><code>&lt;table class="table"&gt;
    &lt;tr&gt;
        &lt;th&gt;
            User
        &lt;/th&gt;
        &lt;th&gt;
            @Html.DisplayNameFor(model =&gt; model.Comment)
        &lt;/th&gt;
    &lt;/tr&gt;

    @foreach (var item in Model)
    {
        &lt;tr&gt;
            &lt;td&gt;
                @Html.ActionLink(item.User.UserName, "VisitUser", new { id = item.UserId }) 
            &lt;/td&gt;
            &lt;td&gt;
                @Html.DisplayFor(modelItem =&gt; item.Comment)
            &lt;/td&gt;
        &lt;/tr&gt;
    }
&lt;/table&gt;
</code></pre>

<p>I think it's about what I am returning in controller, I tried some different alternative but I just end up hitting the error:</p>

<pre><code>Description: 
</code></pre>

<blockquote>
  <p>An unhandled exception occurred during the execution of the current
  web request. Please review the stack trace for more information about
  the error and where it originated in the code.</p>
  
  <p>Exception Details: System.NullReferenceException: Object reference not
  set to an instance of an object.</p>
  
  <p>Source Error: </p>
  
  <p>Line 9:  @Html.Action("Comment", new { id = Model.Id })</p>
</blockquote>

<p>OR </p>

<blockquote>
  <p>child actions are not allowed to perform redirect actions.</p>
</blockquote>

<p>If I try to <code>RedirectToAction</code> for <code>CreateComment</code> etc.</p>

<p>I would appreciate an example of code as I find it hard to understand new concepts by just words. </p>