RavenDB Service インスタンスを localhost:8080 にセットアップし、OAuth プラグインを使用して認証用の単純なユーザー ドキュメントを保存しています。ID に GUID を使用し、ユーザーの電子メールを名前として使用しています。次のコードは、ユーザーを保存するために適切に機能しています
public AccountUserDocument CreateUser(RegisterModel model)
{
using (IDocumentSession session = DataDocumentStore.Instance.OpenSession())
{
Guid userId = Guid.NewGuid();
session.Store(new AccountUserDocument
{
Name = model.Email,
Id = String.Format("Raven/Users/{0}", userId),
AllowedDatabases = new[] { "*" },
Email = model.Email,
FirstName = model.FirstName,
LastName = model.LastName,
FacebookId = 0,
Expires = DateTime.Now.AddMonths(1),
AccessToken = string.Empty
}.SetPassword(model.Password));
session.SaveChanges();
return session.Load<AccountUserDocument>
(String.Format("Raven/Users/{0}", userId));
}
}
有効なユーザー オブジェクトを返します。しかし、私が電話するとき
return session.Query<AccountUserDocument>()
.Customize(x => x.WaitForNonStaleResults())
.Where(x => x.Name == email)
.SingleOrDefault();
私は何も得ません。1 週間前までは機能していましたが、現在は機能していません。RavenDB スタジオを開くと、ユーザーが表示され、入力した名前とまったく同じ名前が表示されます (コピーしてテキスト フィールドに貼り付けることもできます)。
問題が解決することを期待して、サービスを停止して再起動しようとしましたが、解決しませんでした。
ここで何が起こっているのかをデバッグする方法について、誰かが私を指摘できるかどうか疑問に思っていました。完全なコード リポジトリはここにあります。
https://github.com/jamesamuir/MVC_Facebook_Auth
誰かがそれをダウンロードする傾向がある場合。
前もって感謝します。