Linqpad 似乎无法识别已实现的接口
我有 c# 项目 GenericBusinessObject 和一个使用 GenericBusinessObject 的项目 WebRole。 WebRole 有一个 BusinessObject Workitem,它实现从 GenericBusinessObject 中调用的接口方法 IFastSearchable.IndexDocument。 实际上,WorkitemBusinesObject 在 WebRole 中被声明为 GenericBusinessObject。
我引用了 LinqPad 中的两个项目 dll。但 LinqPad 失败并出现异常。
TypeLoadException:在程序集“WorkstreamPlatform_WebRole,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null”中键入“WorkstreamPlatform_WebRole.Models.Workitem”的方法“IndexDocument”,这是主要实现。
LinqPad 认为 Workitem 没有 IndexDocument 方法的实现。这是错误的。
这是 LinqPad 的错误还是我的想法错误?
在正常的项目执行中它可以工作。
I have a c# project GenericBusinessObject and a project WebRole, which uses GenericBusinessObject. WebRole has a BusinessObject Workitem, that implements the Interface method IFastSearchable.IndexDocument that is called from within GenericBusinessObject.
Actually the WorkitemBusinesObject is declared in WebRole as GenericBusinessObject.
I refer both project dlls from LinqPad. But LinqPad fails with an exception.
TypeLoadException: Die Methode "IndexDocument" im Typ "WorkstreamPlatform_WebRole.Models.Workitem" der Assembly "WorkstreamPlatform_WebRole, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" hat keine Implementierung.
LinqPad thinks that Workitem has no implementation of the IndexDocument method. Which is wrong.
Is it a LinqPad bug or am I thinking wrong?
In normal project execution it works.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
通常我在这些情况下发现 TypeLoadException 与使用不同版本的 .NET 框架有关。例如,如果您运行 LP 版本 2.x 而不是 4.x,同时引用使用 4.x 构建的 dll。
我希望确保所有版本的代码都是兼容的。 LP 的 2.x 为 3.5,4.x 为 4.0。
Usually what I find in these situations with TypeLoadException is that it is related to using different versions of the .NET framework. For example, if you are running version 2.x of LP instead of 4.x while referencing a dll build with 4.x.
I'd look to make sure all versions of the code are compatible. 2.x for LP is 3.5 and 4.x is for 4.0.