我试图让用户能够更改他们恰好在IAuthSession
界面中的显示名称并将更改提交到数据库。
我通过以下方式注册一个容器AppHost
:
container.Register<IUserAuthRepository>(new MongoDBAuthRepository(new MongoDBClient().MongoDB, true));
然后在我的服务中,我执行以下操作:
public class HandlerService : Service
{
public HandlerService(IUserAuthRepository userAuthRepository)
{
this._userAuthRepository = userAuthRepository;
}
private readonly IUserAuthRepository _userAuthRepository;
public void SaveDisplayName(string displayName) {
var session = base.SessionAs<CustomUserSession>(); // CustomUserSession inherits AuthUserSession
if (!session.DisplayName.EqualsIgnoreCase(displayName))
{
session.DisplayName = displayName;
_userAuthRepository.SaveUserAuth(session);
}
}
}
尽管代码命中_userAuthRepository.SaveUserAuth
,但没有引发异常并且没有返回任何内容,因为该方法是无效的。但是,数据实际上并没有提交到数据库。在这种特殊情况下,MongoDB。
任何想法为什么它不保存它或者如果出现问题为什么不抛出异常?