Tengo una DLL de C++ de terceros a la que llamo desde C#.¿Cómo puedo implementar métodos estáticos en una interfaz?
Los métodos son estáticos.
Quiero abstracta hacia fuera para hacer algunas pruebas unitarias así que creé una interfaz con los métodos estáticos en ella, pero ahora mis errores del programa con:
El modificador 'estático' no es válido para este artículo
MyMethod cannot be accessed with an instance reference; qualify it with a type name instead
¿Cómo puedo lograr esta abstracción?
Mi código es el siguiente
private IInterfaceWithStaticMethods MyInterface;
public MyClass(IInterfaceWithStaticMethods myInterface)
{
this.MyInterface = myInterface;
}
public void MyMethod()
{
MyInterface.StaticMethod();
}
Tal vez usted puede hacerlo con los métodos de extensión: http://stackoverflow.com/questions/1243921/c-sharp-interface-static-method-call-with-generics – hcb