English 中文(简体)
在签署C#组时未实施错误的接口
原标题:interface not implemented error when signing C# assembly

我曾试图签署集会,并发现这一错误:

Utils。 链接不执行接口成员接口。 国际环境。 BugFactory () . Utils.Connection. BugFactory()不能执行接口。 BugFactory() 因为它没有第三方图书馆的对应回报类型。 BugFactory 。

这一错误像ir脏、 d脏 lie! 在<代码>Utils.Connection上,我有这种方法:

public new BugFactory BugFactory()

我不认为<代码>新。 关键词是问题,因为1)消除错误,2)与执行<条码>条码/代码”的其他类别有相同错误的Im,即不适用使用<条码>新关键词<>:<>Update:<_em>如果我使用<条码>override ,而不是<条码>新,则我有以下错误:

Utils.Connection.BugFactory() : 不能推翻,因为 第三方图书馆事务

页: 1 第三批“图书馆”是财产。

只有一个<代码>。 BugFactory 类别,因此,与方法回报相比,在接口上存在问题,需要不同的<代码>BugFactory返回类型。 即便我明确把我的方法称为返回<代码>。 第三编:书目:BugFactory,在我试图将<代码>UtilsDL时,我仍然有错误。

能否通过<代码>实现。 第三方图书馆是旧的COM图书馆,不符合标准。 我对这个图书馆没有控制权。 当I do not试图签署<编码>Utils组时,我没有发现接口错误。

我的大问题是:我如何签署这一大会?

using ThirdPartyLibrary; // The only using statement
namespace Interfaces
{
   public interface IConnection
   {
       ...
       BugFactory BugFactory();
   }
}
问题回答

I m 仍然怀疑new 这一错误的关键词。

你说,“我不认为新关键词是问题,因为1)消除新关键词不会阻止错误”,但你必须铭记,如果你的方法掩盖了基数方法,汇编者将添加一个<条码>新<<>代码/代码>,即使你没有具体说明,除非你明确具体指明<条码>overe。

所有明文<代码>新 确实是为了防止汇编者发出警告(不是错误)。

是否确实存在隐藏或凌驾于不顾的方法?

如果你具体指明了这一方法的<代码>virtual而不是new。 是否编纂? 它是否误用了“未发现任何合适的方法?”

[ Edit in response to You comment]

I get this error: " Utils.Connection.BugFactory() : cannot override because ThirdPartyLibrary.ConnectionClass.BugFactory is not a function." The original ThirdPartyLibrary.ConnectionClass.BugFactory is a property.

我怀疑这个问题。 你正在用一种方法推翻财产。

通过使用新的关键词,你将旧财产藏匿给任何提及贵族的人。

相比之下,凡是提到超级阶级的人(你继承的人)都会看到旧财产,而不是你的新方法。

您能否将超级(或接口)的编码与衍生等级加在一起?

[ Edit in response to You comment]

I m trying to change the interface to have BugFactory be a property instead of a method

新的困难在于,它似乎是一种魔法,可以让你改变论点类型和返回类型,但确实是纯邪恶。

不仅不改变法典所有消费者的类型,而且只让消费者成为压倒性的新类型。 这使你处于可怕的境地,即两名消费者在同一场合看到不同的签名,视其投放方式而定。

参见,如果你能够确定正在抱怨的消费法,并思考是否需要改变贵国的法典,以支持这类改动。 而且,你是否试图做一些“新鲜黑板”的事情?

姓名空间/转移问题?

第三手图书馆。 如果在提及第三党大会时有两种不同的版本,则模拟法可能是另一种类型: 在你签署/认可时,有一次汇编时间,有一次。

就像你一样,它只是通过Add. Reference dialog来提及COM图书馆。 或许,你应当为可以签署的COM图书馆设立一个初级实习大会。 签署集会的征兆之一是,还必须签署它提及的所有集会。

通常使用SDK方案TlbImp:

TlbImp Youcomlibrary.tlb /first /keyfile:yourkeyfile.snk /out:yourcomlibrary.dll

您的<条码>信息/编码>接口如何? 似乎好像您的<代码>。 第三方图书馆有<条码>。 标 题 BugFactory 反对在您的项目或另一参考资料中。 页: 1 Third PartyLibrary.BugFactory 这种方法的回报类型如何?





相关问题
Anyone feel like passing it forward?

I m the only developer in my company, and am getting along well as an autodidact, but I know I m missing out on the education one gets from working with and having code reviewed by more senior devs. ...

NSArray s, Primitive types and Boxing Oh My!

I m pretty new to the Objective-C world and I have a long history with .net/C# so naturally I m inclined to use my C# wits. Now here s the question: I feel really inclined to create some type of ...

C# Marshal / Pinvoke CBitmap?

I cannot figure out how to marshal a C++ CBitmap to a C# Bitmap or Image class. My import looks like this: [DllImport(@"test.dll", CharSet = CharSet.Unicode)] public static extern IntPtr ...

How to Use Ghostscript DLL to convert PDF to PDF/A

How to user GhostScript DLL to convert PDF to PDF/A. I know I kind of have to call the exported function of gsdll32.dll whose name is gsapi_init_with_args, but how do i pass the right arguments? BTW, ...

Linqy no matchy

Maybe it s something I m doing wrong. I m just learning Linq because I m bored. And so far so good. I made a little program and it basically just outputs all matches (foreach) into a label control. ...