1
何らかの理由で、 'アイデンティティ'の 'UserManager'は、自分のシードクラス内で新しいユーザーを保存しません。シーディングクラスの他のものは、期待どおりに正常に動作します。それは単に「CreateAsync」メソッドの問題です。コードは以下の通りです:UserManager.CreateAsyncは、シードクラス内に新しいユーザープロファイルを作成しません。
public class WorldContextSeedData
{
private WorldContext _context;
private UserManager<WorldUser> _userManager;
public WorldContextSeedData(WorldContext context, UserManager<WorldUser> userManager)
{
_context = context;
_userManager = userManager;
}
public async Task EnsureSeedData()
{
if (await _userManager.FindByEmailAsync("[email protected]") == null)
{
//add user
var newUser = new WorldUser
{
UserName = "Lucas",
Email = "[email protected]"
};
await _userManager.CreateAsync(newUser, "[email protected]!");
}
if (!_context.Trips.Any())
{
//Add new Data
var usTrip = new Trip()
{
Name = "US Trip",
CreatedBy = "Lucas",
Timestamp = DateTime.Now,
Stops = new List<Stop>()
{
new Stop { Name= "Atlanta, GA", Order = 0},
new Stop { Name= "NYC, NY", Order = 1},
new Stop { Name= "Tempe, AZ", Order = 2}
}
};
var worldTrip = new Trip()
{
Name = "World Trip",
CreatedBy = "Lucas",
Timestamp = DateTime.Now,
Stops = new List<Stop>()
{
new Stop { Name= "Poland", Order = 0},
new Stop { Name= "France", Order = 1},
new Stop { Name= "Germany", Order = 2}
}
};
_context.Trips.Add(usTrip);
_context.Stops.AddRange(usTrip.Stops);
_context.Trips.Add(worldTrip);
_context.Stops.AddRange(worldTrip.Stops);
_context.SaveChanges();
}
}
}
は、結果を確認してみてください。MYPする@のssword「IdentityResult結果は= _userManager.CreateAsync(NEWUSERを待ちます ""! ); " –
完璧なスティーブ、おかげでたくさん、どのように私はそのデバッグオプションを省略することができます、結果は、数字が含まれていないパスワードが付属して、それは今すべて良いです – lucas