我有两个不同的模块,它们对同一个接口和多个子模块有不同的绑定。以下示例
public void configure() {
Injector injPublisher = Guice.createInjector(new PublisherModule());
Publisher pub = injPublisher.createInjector(Publisher.class)
bind(Publisher.class).toInstance(pub)
install(new SubscriberModule());
}
现在我遇到了一个需要同时使用两个模块的用例。任何解决方案?
PS:我现在不能使用任何命名绑定。我一直在寻找像(它没有工作)的解决方案
private void BindProducts()
{
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["kernelCS"].ConnectionString);
con.Open();
SqlDataAdapter Gridad = new SqlDataAdapter("select * from tbl_price", con);
DataTable Gridds = new DataTable();
Gridds.Clear();
Gridad.Fill(Gridds);
gridviewProducts.DataSource = Gridds;
con.Close();
}
有什么工作吗?
答案 0 :(得分:0)
根据@Jeff Bowman的建议,我可以访问模块,我可以编辑它以使模块保密。
PS:实际上上面的配置方法代码正在运行。该 懒惰创建的实例(例如,发布者中的ITransport引用是通过@assisted注入工厂创建的,它也是基于某些客户端操作而懒惰地实例化)使用Publisher Module的绑定。而早期创建的实例来自订阅者模块。不确定如何理解这种行为