【问题标题】:Convert Task<decimal> to decimal将 Task<decimal> 转换为十进制
【发布时间】:2018-09-22 14:50:18
【问题描述】:

当我尝试将Task&lt;decimal&gt; 转换为decimal 时出现此错误:

无法加载文件或程序集 'EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' 或其之一 依赖关系。定位程序集的清单定义不 匹配程序集引用。 (HRESULT 异常:0x80131040)

这是我的方法:

public async Task<decimal> GetTotalProposalAmount()
{
    using (DataContext db = new DataContext())
    {
        var total = db.Database.SqlQuery<decimal>("Get_ProposalTotal", null);
        return await total.FirstAsync();
    }
}

我在控制器中调用它:

public async Task<ActionResult> Index(int? page, string search)
{

   model.Proposaltotal = Convert.ToDecimal(GetTotalProposalAmount());
    return View(model);
}

【问题讨论】:

  • 阅读警告:Index() 没有等待任何东西。
  • 您的错误与 Task 和 Async 无关......您只是使用不正确,但这不是您收到错误的原因。

标签: c# asp.net-mvc entity-framework


【解决方案1】:

你只需要等待任务:

model.Proposaltotal = await GetTotalProposalAmount();

这与您的构建错误无关,just add the reference it asks for

【讨论】:

    猜你喜欢
    • 2020-11-23
    • 2017-04-11
    • 1970-01-01
    • 2011-07-28
    • 1970-01-01
    • 2017-07-31
    • 2015-11-11
    相关资源
    最近更新 更多