【发布时间】:2015-12-02 11:22:58
【问题描述】:
我正在开发一个 asp.net mvc5 Web 应用程序 + Entity Framework 6。我想在我的应用程序中拥有一个存储库模型类。目前我正在遵循这种方法来拥有异步操作方法和异步存储库模型类。
例如我有以下存储库保存方法:
public class Repository
{
private Entities t = newEntities();
public async Task Save()
{
await t.SaveChangesAsync();
}
我从我的操作方法中调用如下:
Repository repository = new Repository();
public async Task<ActionResult> GetResourceByName(string resourcename)
{
await repository.Save();
}
那么这是一个正确的方法吗?因为我正在执行以下操作:
我将存储库方法定义为任务,并将操作方法定义为任务。那么我应该将它们都作为任务吗?
我在操作方法(调用 repo 方法时)和存储库上使用了两次
await?那么这些await是多余的吗?
//请注意,这只是存储库方法的一个简单示例,它仅用于保存模型,但我询问的是方法本身,因为我将在更复杂的存储库方法中使用这种方法..
【问题讨论】:
标签: asp.net-mvc asynchronous asp.net-mvc-5 async-await entity-framework-6