Je reçois cette erreur lors de la création d'un public
sur une classe pour implémenter explicitement la méthode interface
. J'ai une solution de contournement : en supprimant l'implémentation explicite de la fonction PrintName
méthode. Mais je suis surpris de voir pourquoi je reçois cette erreur.
Quelqu'un peut-il expliquer cette erreur ?
Code pour la bibliothèque :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Test.Lib1
{
public class Customer : i1
{
public string i1.PrintName() //Error Here...
{
return this.GetType().Name + " called from interface i1";
}
}
public interface i1
{
string PrintName();
}
interface i2
{
string PrintName();
}
}
Code pour l'application de test de la console :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Test.Lib1;
namespace ca1.Test
{
class Program
{
static void Main(string[] args)
{
Customer customer = new Customer();
Console.WriteLine(customer.PrintName());
//i1 i1o = new Customer();
//Console.WriteLine(i1o.printname());
//i2 i2o = new Customer();
//Console.WriteLine(i2o.printname());
}
}
}