未找到方法:'Nancy.ErrorPipeline Nancy.ErrorPipeline.op_Addition
Method not found: 'Nancy.ErrorPipeline Nancy.ErrorPipeline.op_Addition
我们通过 NuGet 将 Nancy 从 v1.2.0 更新到 1.3.0。根据 changelog,似乎没有与我们的应用程序相关的重大更改。但是我们现在收到运行时错误
Method not found: 'Nancy.ErrorPipeline
Nancy.ErrorPipeline.op_Addition(Nancy.ErrorPipeline,
System.Func`3)'.
在
base.ApplicationStartup(container, pipelines);
在我们的 CustomBootstrapper 中。我们正在使用 Nancy.Bootstrappers.Autofac 并有一个自定义的 IStatusCodeHandler。
我已经清理了 packages 文件夹,以及 bin/obj 文件夹,并确认在包恢复后只有一个版本的 Nancy。
我该如何解决或解决这个问题?
(注意:我从未使用过 Nancy。这只是查看 Github 中的历史记录的问题。)
您使用的 +
运算符签名似乎与 1.2.0 中的这个不同:
public static ErrorPipeline operator +
(ErrorPipeline pipeline, Func<NancyContext, Exception, Response> func)
1.3.0 中的这个:
public static ErrorPipeline operator +
(ErrorPipeline pipeline, Func<NancyContext, Exception, dynamic> func)
这不是向后兼容的更改,至少在二进制级别是这样。就 CLR 而言,该签名将是
public static ErrorPipeline operator +
(ErrorPipeline pipeline, Func<NancyContext, Exception, object> func)
...因此任何引用早期签名的二进制文件都找不到它要查找的内容。
您的任何依赖项是否也依赖于 Nancy,可能是 v1.2.0?基本上,您需要找出哪段代码需要旧签名,以便您可以针对 1.3.0 重建该代码。
我们通过 NuGet 将 Nancy 从 v1.2.0 更新到 1.3.0。根据 changelog,似乎没有与我们的应用程序相关的重大更改。但是我们现在收到运行时错误
Method not found: 'Nancy.ErrorPipeline Nancy.ErrorPipeline.op_Addition(Nancy.ErrorPipeline, System.Func`3)'.
在
base.ApplicationStartup(container, pipelines);
在我们的 CustomBootstrapper 中。我们正在使用 Nancy.Bootstrappers.Autofac 并有一个自定义的 IStatusCodeHandler。
我已经清理了 packages 文件夹,以及 bin/obj 文件夹,并确认在包恢复后只有一个版本的 Nancy。
我该如何解决或解决这个问题?
(注意:我从未使用过 Nancy。这只是查看 Github 中的历史记录的问题。)
您使用的 +
运算符签名似乎与 1.2.0 中的这个不同:
public static ErrorPipeline operator +
(ErrorPipeline pipeline, Func<NancyContext, Exception, Response> func)
1.3.0 中的这个:
public static ErrorPipeline operator +
(ErrorPipeline pipeline, Func<NancyContext, Exception, dynamic> func)
这不是向后兼容的更改,至少在二进制级别是这样。就 CLR 而言,该签名将是
public static ErrorPipeline operator +
(ErrorPipeline pipeline, Func<NancyContext, Exception, object> func)
...因此任何引用早期签名的二进制文件都找不到它要查找的内容。
您的任何依赖项是否也依赖于 Nancy,可能是 v1.2.0?基本上,您需要找出哪段代码需要旧签名,以便您可以针对 1.3.0 重建该代码。