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
、例外は発生せず、メソッドが void であるため何も返されません。ただし、データは実際にはデータベースにコミットされません。この特定のケースでは、MongoDB.
問題が発生した場合に保存しない理由、または例外がスローされない理由はありますか?