4)接着创建一个数据库管理器DatabaseManager.cs:
?
- public class DatabaseManager {
- IDatabase _database;
- public DatabaseManager(IDatabase database) {
- _database = database; }
- public void Search(string commandText)
- { _database.Select(commandText);
- }
- public void Add(string commandText) {
- _database.Insert(commandText); }
- public void Save(string commandText)
- { _database.Update(commandText);
- }
- public void Remove(string commandText) {
- _database.Delete(commandText); }
- }
5)在控制台中,编写以下测试程序:
var builder = new ContainerBuilder();
builder.RegisterType<DatabaseManager>();
builder.RegisterType<SqlDatabase>().As<IDatabase>();
using (var container = builder.Build())
{
var manager = container.Resolve<DatabaseManager>();
manager.Search("SELECT * FORM USER");
}
运行结果:
分析:
这里通过ContainerBuilder方法RegisterType对DatabaseManager进行注册,当注册的类型在相应得到的容器中可以Resolve你的DatabaseManager实例。











