我正在研究这种模式,我想执行一个方法,但我不知道如何调用它,因为这些参数化构造函数对我来说似乎很复杂。我遵循的代码由两个接口和两个类组成。下面是示例代码。请帮助我如何调用“TestMethod()”。如果可能的话,有人可以帮助我实现以下目标。
- 调用“TestMethod()”。
- 解释这种模式及其重要性。(如果简单更好,请帮助如何简化它们)。
- 解释为什么构造函数是参数化的。(如果简单更好,请帮助如何简化它们)。
控制台应用程序
class Program
{
private static IPropertyService _property;
public Program(IPropertyService property)
{
_property = property;
}
static void Main(string[] args)
{
Console.WriteLine("Enter something...");
_property.TestMethod(Console.ReadLine());
Console.ReadLine();
}
public interface IPropertyService
{
string TestMethod(string strParam);
}
private class PropertyService : IPropertyService
{
private readonly IPropertyRepository _propertyRepository;
public PropertyService(IPropertyRepository propertyRepository)
{
_propertyRepository = propertyRepository;
}
public string TestMethod(string strParam)
{
return _propertyRepository.TestMethod(strParam);
}
}
}
public interface IPropertyRepository
{
string TestMethod(string strParam);
}
public class PropertyRepository : IPropertyRepository
{
public string TestMethod(string strParam)
{
return string.Format("You have entered: {0}", strParam);
}
}