Asp.net mvc 局部视图是如何工作的?

Asp.net mvc 局部视图是如何工作的?,asp.net-mvc,asp.net-mvc-partialview,Asp.net Mvc,Asp.net Mvc Partialview,在MVC主视图中,我有以下内容: @Html.Partial("_CreateOrEdit", Model) 部分视图_CreateOrEdit包含以下代码块: @{ var item = Model; . . . string favouriteId = "fav_" + item.Id + "_comment"; } 尽管确保item.Id>0,但在指向FavoriteId声明时仍会出现空引用

在MVC主视图中,我有以下内容:

    @Html.Partial("_CreateOrEdit", Model)
部分视图_CreateOrEdit包含以下代码块:

    @{
       var item = Model;
       .
       .
       .
       string favouriteId = "fav_" + item.Id + "_comment";
     }
尽管确保item.Id>0,但在指向FavoriteId声明时仍会出现空引用错误。点意味着还有许多其他类似的声明都具有非空引用

当我将item.Id替换为@item.Id时,在主视图中呈现部分视图失败

我做错了什么?有人能指出完整的代码块教程吗


谢谢

无法使用另一个“@”,因为该语句已在razor代码块中

为了避免对象引用异常,请使用以下代码

string favouriteId = string.Format("{0}_{1}_{2}", "fav", item.Id, "comment");

你问错了问题。(一开始不是,因为几乎没有任何MVC文档,所以您必须阅读源代码和博客)。创建一个复制问题的小示例。您是否在局部视图中添加了@model?@CodeCaster根据您的评论,我认为该块代码在语法上没有问题?@Mukund是的,我在局部视图中添加了@model