1

首先,祝贺 mvvmcross 的创造者,真的很了不起....

现在......我开始在 Windows 手机和 Windows 商店应用程序中使用 mvvmcross,到目前为止没有问题,使用演示作为指导,我设法让几乎所有东西都启动并运行,特别是 json 和 sqlite,但是我有windows store 项目的本地化问题,我没有看到这个案例的演示,只适用于 windows phone(就像一个魅力一样)......我认为它应该类似于 windows phone,但我不让它工作,它运行,但它似乎没有找到 .json 文件..

Windows 商店应用程序中是否有用于本地化的附加步骤?(资源位置,构建操作......)在 wpf 应用程序中呢?

提前致谢

罗伊

4

1 回答 1

0

看起来基于商店的资源加载器存在问题 - 它不喜欢正斜杠。

我刚刚将 Babel Windows Store 和 Wpf 示例应用程序上传到https://github.com/slodge/MvvmCross-Tutorials/tree/master/Babel


对于 WindowsStore,反斜杠和正斜杠存在错误。

要解决此问题,在 Setup.cs 中有一个Hack修复类:

public class HackMvxStoreResourceLoader : MvxStoreResourceLoader
{
    public override void GetResourceStream(string resourcePath, Action<Stream> streamAction)
    {
        // in 3.0.8.2 and earlier we needed to replace the "/" with "\\" :/
        resourcePath = resourcePath.Replace("/", "\\");
        base.GetResourceStream(resourcePath, streamAction);
    }
}

public class Setup : MvxStoreSetup
{
    public Setup(Frame rootFrame) : base(rootFrame)
    {
    }

    protected override IMvxApplication CreateApp()
    {
        Mvx.RegisterType<IMvxResourceLoader, HackMvxStoreResourceLoader>();
        return new Core.App();
    }
}

我也将此添加到https://github.com/slodge/MvvmCross/issues/332 - 应该在未来的版本中修复。


对于 Wpf,资源加载器应该可以工作,但是当前发布的 nuget 包中存在一些问题,需要手动修补:

这些缺少的 nuget 步骤已记录在https://github.com/slodge/MvvmCross/issues/267中- 标记为已修复 - 因此应该在下一个 nuget 发布包中。

于 2013-06-26T07:22:51.440 回答