2

我正在使用 Xamarin 和 Breez# 使用 VS2017 for Mac 构建一个应用程序,一切正常,直到昨天 VS2017 通知我有更新,然后我更新了它,还有来自 nugget 的 Xamarin.forms 包。

那么我的应用程序无法运行。并在尝试调用方法获取数据时抛出异常。

{System.TypeLoadException: Could not find method due to a type load error 
at System.Runtime.CompilerServices.AsyncTaskMethodBuilder
`1[TResult].Start[TStateMachine] (TStateMachine& stateMachine) [0x0002c] in 
/Library/Frameworks/Xamarin.iOS.framework/Versions/11.2.0.11
/src/mono/mcs/class/referencesource/mscorlib/system/runtime
/compilerservices/AsyncMethodBuilder.cs:471 

方法:

 public async Task<IEnumerable<Tenant>> GetAllItems()
    {
        try
        {
            // ignore the flurry of events when query results arrive
            _ignoreEntityChanged = true;
            var query = new EntityQuery<Tenant>().From(_resourceName);

            var qr = await _em.ExecuteQuery(query);
            _ignoreEntityChanged = false;
            var result = qr.ToList();

            return result;

        }
        catch (Exception e)
        {
            _ignoreEntityChanged = false;
            return new List<Tenant>(); // return empty result instead
        }
    }

每次我尝试进入此方法时,都会出现错误。然后我尝试评论所有行但只返回一个空列表,我可以进入该方法并且它有效。下一步,我取消注释该行:

var query = new EntityQuery<Tenant>().From(_resourceName);

然后我无法进入该方法,并引发错误。

我想 EntityQuery 与最新的 vs2017 和 Xamarin.Form 有问题,但不确定。

4

0 回答 0