¿No puedo entender por qué el modelo es nulo en la devolución de datos?

Soy nuevo en ASP.NET MVC y estoy tratando de crear un sitio de tipo blog muy simple como un medio para aprender cómo funciona todo. Pero tengo un problema al publicar desde un formulario de comentarios en un modelo que es nulo y no puedo decir por qué.

En una página de publicación de blog, tengo un enlace "agregar comentario" que llama a algunos JQuery para representar una vista parcial que está fuertemente escrita en CommentModel. El enlace también pasa en la ID de la publicación del blog y el parcial se codifica como:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<Blog.Models.CommentModel>" %>

<% using (Html.BeginForm())
   { %>

    <%: Html.HiddenFor(x => x.Post.ID) %>
    <%: Html.HiddenFor(x => x.CommentID) %>

    <%: Html.TextBoxFor(x => x.Name) %><br />
    <%: Html.TextBoxFor(x => x.Email) %><br />
    <%: Html.TextBoxFor(x => x.Website) %><br />
    <%: Html.TextAreaFor(x => x.Comment) %><br />

    <input type="submit" value="submit" />

<% } %>

The CommentsModel es simple y se ve así (todavía no he aplicado ninguna validación ni nada):

public class CommentModel
    {
        public BlogPost Post { get; set; }
        public int CommentID { get; set; }

        public string Name { get; set; }
        public string Email { get; set; }
        public string Website { get; set; }
        public string Comment { get; set; }
    }

Esto se supone que debe publicar en una acción de controlador simple que agregará el comentario a la base de datos y devolverá al usuario a la página. En aras de la simplicidad, he eliminado la mayor parte del código, pero se parece a:

[HttpPost]
        public ActionResult CommentForm(CommentModel model)
        {
            if (ModelState.IsValid)
            {

            }
            else
            {

            }
        }

Todo funciona como se esperaba, excepto que al publicar el formulario de comentarios, el modelo de comentarios es nulo. No puedo entender por qué esto es nulo. Cuando veo el origen de la vista parcial representada, puedo ver que el "Post.ID" se completa con la ID correcta, pero esto se pierde cuando se envía el formulario.

¿Me estoy perdiendo algo obvio aquí? He configurado formularios similares a esto en el pasado y funcionó bien, no puedo entender por qué no es ahora. Gracias por adelantado

Edición posterior:

Escribí el código incorrectamente y cambié lapublic ActionResult CommentForm(CommentModel model) desdepublic ActionResult CommentForm(CommentModel comment) que estaba causando el problema.

Gracias por la ayuda

Respuestas a la pregunta(2)

Su respuesta a la pregunta