目前正在使用结构图注入transactionid,这是一个每次都需要创建的uniqie Guid
x.For<ITransaction>()
.Use<Transaction>()
.Ctor<string>("transactionId").Is(Guid.NewGuid().ToString())
.Ctor<string>("transactionType").Is(settings["TransactionTypeValue"]);
在控制器中,ITransaction作为参数传递并获取TransactionId。 但是每当调用action方法时,我都没有得到唯一的Guid。 它在加载应用程序时全部设置,每次都会出现相同的值。 每次使用结构图配置调用操作方法时,如何生成唯一的Guid。
答案 0 :(得分:0)
问题是,您只是在初始化容器时将值设置为相同。尝试设置为返回GUID的函数,如下所示:
x.For<ITransaction>()
.Use<Transaction>()
.Ctor<string>("transactionId").Is(() => Guid.NewGuid().ToString())
.Ctor<string>("transactionType").Is(settings["TransactionTypeValue"]);