代码之家  ›  专栏  ›  技术社区  ›  Oleg Kosuakiv

方法ViewModel。当在iOS的MvvmCross中启用链接器“Link All”时,Init接收null作为参数

  •  0
  • Oleg Kosuakiv  · 技术社区  · 7 年前

    我面临这样的问题:在 MvvmCross 4.4.0 在…上 iOS项目 当我将链接器模式从“仅链接SDK”更改为“链接全部”时,在ViewModel的Init方法中,我开始得到 无效的 作为Init方法的参数。下面的示例。(所有其他Init方法都有相同的问题)。

    在PreviousViewModel上:

    public void RedirectToCountry()
    {
        /*_countryId != null */
        ShowViewModel<NextViewModel>(new {countryId = _countryId});
    }
    

    在NextViewModel上:

     public void Init(string countryId)
        {
            /* countryId == null */
            _countryId = countryId;
        }
    

    所以,现在我想知道我需要从链接器保存什么方法/类/文件/命名空间/程序集。 我应该包括哪个组件?

    P、 S:如果现在有人想从MvvmCross的新版本中保存Prepare方法,也请回答。

    P、 备注:我曾研究过MvvmCross使用JsonSerializer在ViewModels之间传输数据,试图将程序集包含在序列化程序文件(MvvmCross.Core.ViewModels)中,但没有帮助。

    2 回复  |  直到 7 年前
        1
  •  1
  •   nmilcoff    7 年前

    以下是我通常避免在iOS上链接的程序集:

    --linkskip=MvvmCross。绑定——linkskip=MvvmCross。结合iOS—linkskip=MvvmCross。本地化--linkskip=MvvmCross。平台--linkskip=MvvmCross。站台iOS—linkskip=Newtonsoft。Json

    在此之后链接所有程序集时,不应该有任何MvvmCross问题。

        2
  •  0
  •   Oleg Kosuakiv    7 年前

    因此,包括我的iOS项目有助于在ViewModels之间传递数据。

    例如: --linkskip=访客指南。网间网操作系统

    此外,我没有包括除MvvmCross之外的所有MvvmCross程序集。结合

    然而,我完全无法理解这一切。