tengo esta interfaz:¿Cómo puedo hacer que un método sea privado en una interfaz?
public interface IValidationCRUD
{
public ICRUDValidation IsValid(object obj);
private void AddError(ICRUDError error);
}
Pero cuando lo uso (implementa la interfaz, la generación automática de código), me sale esto:
public class LanguageVAL : IValidationCRUD
{
public ICRUDValidation IsValid(object obj)
{
throw new System.NotImplementedException();
}
public void AddError(ICRUDError error)
{
throw new System.NotImplementedException();
}
}
El addError método es público y no privado como yo querido.
¿Cómo puedo cambiar esto?
Me sorprende esta compilación, estoy seguro de que cuando estuve en 'piloto automático' mecleé una interfaz y agregué 'public' sin pensar que el compilador se ha quejado de mí. – Kirschstein
No compila. No puede tener métodos privados en una interfaz, y ni siquiera está permitido especificar público, ya que está implícito para todos los miembros de una interfaz. –
Acabo de escribir la interfaz y después intenté usarla en la otra clase. Visual Studio no lo compiló. – SmartStart