Forum Xamarin.Forms

How should I Architecture the xamarin.forms application?

I am going to start a xamarin.forms project for cross platform application. I read so many articles about the architecture of xamarin application, But I am confused about what to use and what not so please help me into this.

Shall I use PCL or Shared Project?
Which Data Binding framework should I use MVVM or MvvmCross?
Which libraries should I use for handling Rest API request?

Best Answers


  • RavinderJangraRavinderJangra USMember ✭✭✭

    It simply depends on your project size. I use PCL and MVVM. Simple and easy. for rest api request use HttpClient in System.Net.Http or modern httpclient

  • kalkotekedarkalkotekedar USMember ✭✭

    @RavinderJangra Thanks your quick reply

  • kalkotekedarkalkotekedar USMember ✭✭
    edited September 2017

    @NMackay Thanks for your reply, You are the one who always ready to give a good solution.

    In some scenarios I have to use Compiler directives not more than two/three scenarios so shall I go with PLC then?

  • NMackayNMackay GBInsider, University admin

    I'm not a fan of shared so I'm probably biased :)

    We're working on a large Prism Forms app (10 modules), 100+ views I'm the chief architect on, we just use PCL and dependency services, it's really down to your requirements.

    Prism makes consuming dependency services etc very easy.

  • kalkotekedarkalkotekedar USMember ✭✭

    @GiampaoloGabba Thanks for your detail reply

  • kalkotekedarkalkotekedar USMember ✭✭
    edited September 2017

    @NMackay @GiampaoloGabba I am using same as said but IT is giving me an error of

    Warning Found conflicts between different versions of the same dependent assembly that could not be resolved. These reference conflicts are listed in the build log when log verbosity is set to detailed.

    what should I do to solve this I have tried to many solutions as well to solve this.
    If you know any solution to solve this let me know.

  • NMackayNMackay GBInsider, University admin


    Start up new threads to get assistance with these issues.

    Usually you can just highlight the warning in Visual Studio and press enter and it will add a redirect in the app config of the project with this issue.

            <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
            <bindingRedirect oldVersion="" newVersion="" />

    Also check your nuget packages for the solution , ensure you don't have any conflicts.

    You'll generally have some warnings in Visual studio, it doesn't stop you compiling or deploying in most cases, some of the warning are spurious, like all tech, it's not error free :)

Sign In or Register to comment.