【发布时间】:2017-12-21 10:45:12
【问题描述】:
我有一个在 Win10 上使用 Visual Studio 2017 创建的 Xamarin/Realm 应用程序。它针对 iOS、Android 和 UWP。我正在尝试在 Windows 和 macOS 上构建此解决方案。
我在 macOS 中添加了 Realm,并在 Android 和 iOS 上成功测试了我的应用程序。然后当我搬回我的Windows机器时。它目前针对的是 UWP。当我在本地计算机上运行应用程序时,我看到以下运行时异常:
System.TypeInitializationException occurred
HResult=0x80131534
Message=The type initializer for 'Realms.Realm' threw an exception.
Source=<Cannot evaluate the exception source>
StackTrace:
at Realms.Realm.GetInstance(RealmConfigurationBase config)
at MouseDroid.MainPageViewModel..ctor() in C:\Users\hmurphy\Documents\Pittsh\Projects\mouse_droid\MouseDroid\MainPageViewModel.cs:line 20
at MouseDroid.MainPage..ctor() in C:\Users\hmurphy\Documents\Pittsh\Projects\mouse_droid\MouseDroid\MainPage.xaml.cs:line 28
at MouseDroid.App..ctor() in C:\Users\hmurphy\Documents\Pittsh\Projects\mouse_droid\MouseDroid\App.xaml.cs:line 17
at MouseDroid.UWP.MainPage..ctor() in C:\Users\hmurphy\Documents\Pittsh\Projects\mouse_droid\MouseDroid.UWP\MainPage.xaml.cs:line 24
at MouseDroid.UWP.MouseDroid_UWP_XamlTypeInfo.XamlTypeInfoProvider.Activate_4_MainPage() in C:\Users\hmurphy\Documents\Pittsh\Projects\mouse_droid\MouseDroid.UWP\obj\x64\Debug\XamlTypeInfo.g.cs:line 207
at MouseDroid.UWP.MouseDroid_UWP_XamlTypeInfo.XamlUserType.ActivateInstance() in C:\Users\hmurphy\Documents\Pittsh\Projects\mouse_droid\MouseDroid.UWP\obj\x64\Debug\XamlTypeInfo.g.cs:line 429
Inner Exception 1:
DllNotFoundException: Unable to load DLL 'realm-wrappers': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
这发生在我的MainPageViewModel 内部,调用GetInstance:
public class MainPageViewModel
{
public IEnumerable<Package> Packages { get; private set; }
public INavigation Navigation { get; set; }
private Realm _realm;
public MainPageViewModel()
{
_realm = Realm.GetInstance();
Packages = _realm.All<Package>();
}
}
我使用的是 1.5.0。根据commit 的说法,这似乎不是问题。
我的配置是为 UWP 使用 x86。 UWP 设置为构建和部署。我已经重新构建了我的解决方案,以防FodyWeaver 对象没有正确生成。我错过了什么吗?
【问题讨论】:
标签: visual-studio xamarin uwp xamarin.forms realm