我是const auth = firebase.auth();
//create new account
const auth_var = auth.createUserWithEmailAndPassword(mail, pass);
auth_var.catch(e=> console.log(e.message));
auth_var.catch(e=> console.log(e.code));
firebase.auth().onAuthStateChanged(function(user) {
if (user) {
// User is signed in.
addUserData(fname, lname, phone);
console.log(user);
window.location.href = ../index.html;
}
else {
// No user is signed in.
console.log('not logged in');
}
});
的新用户,请帮助我为什么我无法使用async从db获取数据:
AsyncController
如果我将上述代码更改为:
public async Task<ActionResult> Index()
{
Task<IEnumerable<Country>> objctry = Task.Factory.StartNew<IEnumerable<Country>>(objrepo.GetCountry);
await Task.WhenAll(objctry);
return View(objctry);
}
它的工作。 请指导我在哪里做错了
答案 0 :(得分:5)
在这种情况下,您使用的是Task.WhenAll
。
使用Task.Run
并按以下步骤重构操作
public async Task<ActionResult> Index() {
IEnumerable<Country> objctry = await Task.Run(() => objrepo.GetCountry);
return View(objctry);
}