我正在创建一个程序集,即尚未开发的应用程序将用于通过System.IO.Ports.SerialPort
与设备进行通信
我想使用StructureMap将一个接口传递给一个类,该类将充当SerialPort的包装器,进入代表我将与之通信的设备的类的构造函数。
e.g。
public interface ISerialPort
{
Handshake Handshake { get; set; }
bool IsOpen { get; }
event SerialDataReceivedEventHandler DataReceived;
void Close();
void Open();
string ReadLine();
string ReadExisting();
}
public class MyDevice
{
private readonly ISerialPort _serialPort;
public MyDevice(ISerialPort serialPort)
{
_serialPort = serialPort;
}
}
我还打算使用这种方法来促进单元测试。
我以前使用过具有Application_Start
或Main
方法的Web /桌面应用程序的StructureMap,我可以将其用作配置StructureMap的入口点。但是,由于这是一个没有单一入口点的独立组件,我不能这样做。
因此,配置StructureMap以在程序集中使用的最佳方法是什么?
答案 0 :(得分:0)
告诉用户他们应该向容器添加哪些类。不要忘记描述每个班级的目的。