【发布时间】:2015-09-06 01:39:57
【问题描述】:
我的 EF6 的 asp.net mvc 5 Web 应用程序中有以下异步方法:-
public async Task<Resource> GetResourceByName(string resourcename)
{
return await entities.Resources.SingleOrDefaultAsync(a => a.RESOURCENAME.ToLower() == resourcename.ToLower());
}
现在我正在尝试从上述方法中获取返回对象的 ID,如下所示:-
var temp = await GetResourceByName(FQDN).Result.RESOURCEID;
但这会引发以下错误:-
错误 1 无法等待“长”
现在要解决这个问题,我做了以下事情:-
var temp = await GetResourceByName(FQDN);
id = temp.RESOURCEID;
所以不知道为什么我的第一个方法不起作用。现在我等待任务,当它完成时,我将检索 .Result 并获取 ResourceID ...那为什么这不起作用?
这里是资源的模型:-
public partial class Resource
{
public long RESOURCEID { get; set; }
public string RESOURCENAME { get; set; }
public Nullable<long> ACQUISITIONDATE { get; set; }
public Nullable<long> WARRANTYEXPIRY { get; set; }
public Nullable<long> EXPIRYDATE { get; set; }
public long COMPONENTID { get; set; }
public string ASSETTAG { get; set; }
public string SERIALNO { get; set; }
public string BARCODE { get; set; }
public Nullable<long> PURCHASELOTID { get; set; }
public Nullable<long> VENDORID { get; set; }
public long RESOURCESTATEID { get; set; }
public Nullable<long> SITEID { get; set; }
public Nullable<long> CIID { get; set; }
public bool ISDEPRECIATIONCONFIGURED { get; set; }
public bool ISDEPRECIATIONCALCULATED { get; set; }
public bool ISPERSONAL { get; set; }
public virtual ComponentDefinition ComponentDefinition { get; set; }
public virtual ResourceLocation ResourceLocation { get; set; }
public virtual ResourceState ResourceState { get; set; }
public virtual SiteDefinition SiteDefinition { get; set; }
}
【问题讨论】:
标签: asp.net .net asp.net-mvc asynchronous entity-framework-6