Asp.Net Boilerplate ...如何在现有表中搜索?

时间:2017-08-25 11:44:37

标签: async-await ef-code-first aspnetboilerplate asp.net-boilerplate

我想在数据库中的Boilerplate默认表上应用查询。但样板文件使用异步方法。如何通过Boilerplate框架在数据库中搜索。

2 个答案:

答案 0 :(得分:0)

你可以详细说明你的问题吗? 我不确定你想要达到什么目的 如果使用IRepository,则默认情况下可以使用同步和异步方法。 如果您正在使用异步查询并期望立即获得结果,则可以使用 如果必须等待查询结果,可以使用Task的Result属性。 e.g。

var valueImWaitingFor = _repository.GetAllListAsync().Result;

编辑: 假设您要在登录时更新用户,您可以使用提供的UserManager类。

var user = loginResult.User; // get your user object
user.Name = "New name"; // edit property
// use one of 3 proposed solutions.
var updatedUser = _userManager.Update(user);
var updatedUser1 = _userManager.UpdateAsync(user).ConfigureAwait(false);
var updatedUser2 = AsyncHelper.RunSync(()=>_userManager.UpdateAsync(user));

即使您不使用UserManager,也可以使用第二个和第三个选项以类似方式运行异步调用。

答案 1 :(得分:0)

如果你想使用异步方法作为同步方法,那么ABP中就有一个帮助类。

var records = AsyncHelper.RunSync(() => _repository.GetAllListAsync());