在CloudScribe SimpleContent中使用本地cshtml文件时编译错误

时间:2017-08-13 07:44:38

标签: c# asp.net-core-mvc cloudscribe

我正在通过Cloudscribe“剥离”博客引擎SimpleContent,并在本地复制必要的部分视图,以便对编辑控制html。有两个视图在运行时出现错误,即ArvhieListPartial.cshtml和CategoryListPartial.cshtml。

两者中的错误相同,并且在任何其他博客相关的cshtml页面中都不存在:

<li>
    <a asp-route="@blogRoutes.BlogArchiveRouteName"
        asp-route-year="@cat.Key.Substring(0,4)"
        asp-route-month="@cat.Key.Substring(5,2)">@cat.Key.Replace("/", "-")(@cat.Value)</a>
</li>

@cat.Key是错误点,浏览器报告:

  

非可调用成员KeyValuePair&lt; string,int&gt;。密钥不能像方法一样使用。

我注意到这两个部分视图是唯一一个在顶部有引用的视图:

@model Dictionary<string, int>

我正在使用Visual Studio 2017版本15.2(26430.16)

1 个答案:

答案 0 :(得分:2)

我认为这是因为你删除了这些

之间的空格
@cat.Key.Replace("/", "-")(@cat.Value)

原始视图在那里有一个空格但是通过删除它,razor正在解释(就像方法签名的开头而不是文本文本,因为它只是一个字符串属性,它会抛出此错误因为它解释你正在使用它像方法