如何修复 Html.HiddenFor 的 RazorEngine 问题

How to fix RazorEngine issue with Html.HiddenFor

asp.net mvc4 应用程序,针对 .NET Framework 4.5.2,使用 VS 2019

我在 @Html.HiddenFor(x => x.InvoiceId)

的剃须刀页面上收到 CS0012 错误

指向缺少的程序集引用 'System.Core'。

奇怪的是,只有在打开VS解决方案资源管理器页面时才会弹出错误,但是 该解决方案编译并运行没有错误!

我的项目中没有对 'System.Core' 的引用,从帖子中我了解到它是在内部引用的。 因此,我按照错误消息中的建议更改了 PublicKeyToken 的密钥,但这并没有消除错误并导致了运行时错误。

然后我使用了 Serge

发布的解决方法
<input type="hidden" value="@Html.AttributeEncode(Model.InvoiceId)" id="InvoiceId" name="InvoiceId" />

哪个工作正常。

但是我想找出导致此错误的原因以及如何删除它。

我们将不胜感激您的帮助和建议。

我通过 warabino 找到了这个答案:

And what I did was that I copied that dll from C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.6.1\System.Core.dll and I pasted these lib into my project bin. Later u can see that inside your project the dll is added automatically in the reference.

我做了类似的事情(使用 C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.5 中的 dll)并且 解决了问题.

但是,我不知道该 dll(及其引用)之前是否存在于我的项目中,是丢失了还是在我进行了一些更新后变得必要了。