Forum Cross Platform with Xamarin


The Xamarin Forums have officially moved to the new Microsoft Q&A experience. Microsoft Q&A is the home for technical questions and answers at across all products at Microsoft now including Xamarin!

To create new threads and ask questions head over to Microsoft Q&A for .NET and get involved today.

PRISM for modular development in Windows and iOS

I intend to use PRISM libraries to have modular development and MVVM for my WPF application in Windows. The same application needs to be developed for iOS as well. Read that MVVMCross can be used along with Xamarin to have the View decoupled so that Model and ViewModel can be shared across platforms. Now if I use PRISM, will the PRISM libraries be compiled in Mac. What should be my development ecosystem. I prefer to use PRISM, for the modularity framework it provides. The application is a huge application with some dozens of modules. Please advise.


  • FZelleFZelle DEMember ✭✭✭
    edited July 2013

    Prism == CompositeWPF so there is no way to get it running with IOS.

    Prism bases on many things that are WPF related so there is no real way to decouple it.

    If you want to be cross platform you have to use something else.

    Why do you think you need Prism?

    • IOC Container -> there are better ones then Unity or MEF

    • Messages -> TineMessenger is as good.

    • MVVM, you already have a solution with MVVMCross.

    • MEF should be compilable under pure Framework.

  • JulielsJuliels INMember

    We are in the process of evaluating and deciding on a WPF application solution architecture. Have the same on iOS is also one of the requirement. So wanted to know whether we can have PRISM kind of framework or not. Thanks for the reply.

    In related to this I have two more questions.

    Does MVVMCross requires Xamarin libraries on Windows.?

    Can we build a WPF app using pure MVVM and then later in future build the app in iOS. What are the main checklist we need to follow if we need to build this windows application in iOS at a later point of time? Right now we are planning to build the application using in WPF with .NET 4.5.

  • MihaMarkicMihaMarkic SI ✭✭✭✭

    Or just go with MvvmLight which is very cross-platformish.

  • JonBlankenship99JonBlankenship99 USMember

    If you're using Forms, Brian Lagunas gave a great talk on Prism.Forms at Evolve 2016. It has some nice features and is something I'm experimenting with.

    Of course, I would also highly recommend tried and true MvvmLight.

  • MichaelRidlandMichaelRidland AUInsider, University ✭✭✭

    If want cross platform with the Native UI's aka Xamarin Traditional, then MvvmCross is a great framework, it's a bit of a learning curve but it forces you to have a good architecture for cross platform.

    If you using Xamarin.Forms you can also take a look at FreshMvvm which is designed specifically for Xamarin.Forms, we actively dogfood it in a huge number of projects so it has all the edge cases you need for Forms development.

  • Rahul6.yRahul6.y USMember

    Hi @MichaelRidland ,

    Thank you for the new release and I am using FreshMvvm and I am struggling to register multiple IOC's
    I have attached code snipe and please let me know the correct way of using FreshIOC's
    ///main app
    public class App : Application
    public App()
    // The root page of your application
    MainPage = new NavigationPage(new LaunchPage(this));

        void SetupIOC()
            FreshIOC.Container.Register<IObjectARepository, ObjectARepository>();
            FreshIOC.Container.Register<IObjectBRepository, ObjectARepository>();


Sign In or Register to comment.