繁体   English   中英

在ASP.NET MVC核心应用程序中更新引用的.NET 4.5.2项目时出现编译错误

[英]Compilation errors when updating a referenced .net 4.5.2 project in asp.net mvc core app

我目前有一个常规的4.5.2项目,该项目具有一个类(比方说MyClass和一个方法)

public static void Do(string name, List<Operation> operations)
        {
            //do some stuff
        }

在我的ASP.NET Core MVC应用程序中

MyClass.Do(User.Identity.Name, operations);

尝试构建该项目时,出现错误CS1501,Do的无重载需要2个参数。

我最近更新了Do以添加字符串名称参数。 实际上,我对.net 4.5.2程序集所做的任何更改都将反映在Visual Studio中,并已内置到程序集中,但是当我进行构建(或清理/构建或删除bin文件夹)时,这些更改会导致编译错误。

我还尝试从asp.net核心项目中删除该项目作为参考。

是什么导致asp.net mvc停留在旧定义上?

更新一些关闭/重新打开后,我注意到我的dll(我引用的项目)的路径是不正确的project.fragment.lock.json。

我不知道这个文件是什么,但是它指向的是bin / Debug / my.dll,而不是bin / x64 / Debug / my.dll。

如果我尝试手动更改它,它将在下一次构建中更新为不正确的值。

我在ASP.NET Core中也遇到了一些奇怪的问题。 在某些情况下,该构建似乎在运行时没有产生任何错误,但从未真正构建过该项目。 因此,即使它的行为就像您在重建它一样,您实际上也可能在运行旧代码。

当我遇到这个问题时,通常可以追溯到project.json中有引用的问题。 查看其中是否有任何“弯曲”。 有时,直到我关闭Visual Studio并重新打开该项目,它们才对我显示。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM