![](/img/trans.png)
[英]How to call a method defined in interface and implemented in class in C#?
[英]C# Complains that an Interface Method is not Implemented
namespace RepositoryFactory.Interface
{
public interface ISelectionFactory<TIdentityObject>
{
DbCommand ConstructSelectCommand(Database db, TIdentityObject idObject);
}
}
namespace SafetypadDAL
{
public class T_INCIDENT_SelectFactory:ISelectionFactory<T_INCIDENT>
{
public DbCommand ConstructSelectCommand(Database db, T_INCIDENT idObject)
{
//my business codes will be here
return command;
}
}
}
這是那個程序。
在這里您找不到任何錯誤的簽名。
您可能已經實現了一個名為ConstructSelectCommand
的方法,但簽名錯誤,因此與該方法不匹配。
如果您使用的是VS2005或更高版本,請在類聲明中單擊接口名稱,然后按Ctrl和句點(點)。 它會為您生成方法存根。
如果您確實真的認為自己做對了,請發布該方法的聲明。 例如,您確定已公開嗎? (當然,也可以顯式實現該接口。)
編輯:這兩個簽名中的Database
是否可能引用不同的類型? 如果嘗試使用我建議的使Visual Studio生成存根的方法,會發生什么?
您尚未實現。 如果願意,請發布代碼的相關部分。 可能您可以通過事件指示IDE嘗試為您實施實現,只是獲得確切的簽名。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.