目前没有可用的对话。创建对话并将其绑定到容器

时间:2017-08-28 08:16:41

标签: nhibernate repository

在方法中直接使用以下代码时出现此错误:

var fooRepository = ServiceLocator.Current.GetInstance<FooRepository>();
var fooObj = fooRepository.GetFooObj(someText);  //get Error

StackTrace包含:

  

at uNhAddIns.SessionEasier.Conversations.ThreadLocalConversationalSessionContext.CurrentSession()      在NHibernate.Impl.SessionFactoryImpl.GetCurrentSession()

错误讯息:

  

目前无法进行对话。创建对话并将其绑定到容器

一般来说如何Create a conversation and bind it to the container

1 个答案:

答案 0 :(得分:0)

我不知道为什么会发现,如果我在这样的模型中声明存储库

[PersistenceConversational(MethodsIncludeMode = MethodsIncludeMode.Implicit)]
public class FooModel : IFooModel

并声明一个方法,在其中使用repository mehod并返回数据:

class FooModel
{
     public FooObj ModelGetFooObj(string text)
     {
         return fooRepository.GetFooObj(text);
     }
}

然后新增FooModel并使用fooModel.ModelGetFooObj(text)获取数据,效果正常。