How to use Azure Mobile App service with existing SQL database - xamarin

I've read many articles and tutorials that demonstrate how to use the Azure mobile service however I'm left unclear with many things.
I have an existing web app that uses Azure SQL database and is published with Azure. I'm trying to integrate the already created database into the Xamarin Android App I'm developing.
I'm confused with the following things.
Do I need to change the .Net back end to be able to use the database tables in the Xamarin app? The way I see it, I shouldn't need to since the Xamarin app communicates with the SQL database, not the .Net app.
How does the data get stored into the SQL table? Do I just reference the Mobile service inside my Xamarin app and it will create a bridge between the SQL database and my application or do I need to first create the tables or import the existing tables from the database?
The web app is currently deployed to Azure Web service. Does it need to be deployed to Mobile App service?
I would really appreciate if someone can help me out with these questions.

Your mobile app is not communicating directly with your SQL database. It is likely going through an Azure App Service - this is a web-enabled piece of middleware that projects tables within the SQL database to an OData feed. So you have three pieces - the SQL database, the Azure App Service and your client.
1) Yes, you need to update the ASP.NET backend to support your database tables. If this is an existing database, then you also need to update your database to support the mobile projection. I wrote a blog on this: https://shellmonger.com/2016/05/11/30-days-of-zumo-v2-azure-mobile-apps-day-19-asp-net-table-controllers/ but you may want to start earlier in the series that that.
2) You add the Azure Mobile client to your Xamarin app - this coordinates the transfer of data between your client and the backend. You can find a tutorial on this that I recommend walking through here: https://azure.microsoft.com/en-us/documentation/articles/app-service-mobile-xamarin-android-get-started/ - you can also read the HOWTO here: https://azure.microsoft.com/en-us/documentation/articles/app-service-mobile-dotnet-how-to-use-client-library/ - the tutorial and HOWTO cover both offline and online data access scenarios.
3) If you are using the new portal (portal.azure.com), then there is really no difference between a Mobile App and a Web App. The Mobile App is simply a web app with a specific SDK deployed within your ASP.NET (or Node.js) backend code and with a connected database. The minor difference is that if you create a Mobile App then clicking on Quickstarts (within Settings) will get you a mobile quick start; if you do the same with a Web App, then clicking on Quickstarts will get you a web quick start.

Related

looking for Parse alternative server

I'm a hobby developer that use Parse.com as my database and website host, as Facebook is going to shutdown Parse.com, I'm now looking for alternative Parse server.
I use Parse's Cloud Code Hosting to build Dynamic Web App, and Parse itself to store data collected from the website I've build, with custom Cloud Code to help getting and managing data. I've build a Windows Phone app for myself to manage the data I've collected too.
Is there any alternative server that has my requirement?
Dynamic Website
Database host
Custom Cloud Code (with BeforeSave and AfterSave trigger)
with Windows Phone SDK (or REST API if doesn't have)
Very thank you for helping me!
Try out Hasura.
Hasura (http://www.hasura.io): Hasura is a neat PaaS + BaaS solution. It is now competing with Firebase, Kinvey, Heroku et al. There is a full comparison page here: Compare | Hasura (https://compare.beta.hasura.io) . The difference majorly lies in infra ownership as well as no tech lock-in due to open-source components(like docker, kubernetes,postgres) building the major chunk of the platform. Check it out. There is also an option to explore (https://explore.beta.hasura.io/) Hasura by building your own blog web app and a todo app in under 15 mins.
Hasura should fit in perfectly for your needs.
DISCLAIMER : Hasura Engineer here.
I'm using Simbla website application development. It doesn't support all of your requirments but it has great UI builder with a backend parse database.
You can try using the parse open source server it has cloud code and you can use a custom database with it.

How to move Parse.com database to my own server and still use Parse.com SDK?

I'm using Parse.com SDK services for my Android app.
I've seen that Parse had released their Android SDK as an open source project on Github on this address.
My app is almost finished, and when I'm uploading it to the Play Store, I don't want to be controlled by Parse.com (I mean that I don't want to be blocked someday, or I don't know that), so I want to move my whole database to my own server that hosted on a secure company.
I've checked the open source project on Github and realized that all I need to use it on my own server is to generate an Application ID and a client key.
So I want to ask if someone knows how to generate an Application ID and a client key of Parse to use it on my own server, or that you maybe knows another way of moving it to my server? And one more question: Today I'm using also Facebook SDK with my app. If I will move my database to my own server, will I still be able to use Facebook SDK on my app?
Thanks!
I have write an article about how to migrate parse to a custom server.
https://medium.com/#jcminarro/run-parse-server-on-your-own-server-using-digitalocean-b2a7d66e1205
There's a massive difference between Parse open-sourcing their SDKs compared to revealing their entire backend architecture and its configuration.
The open-sourced SDKs are essentially wrappers for Parse's REST API along with some convenience functions and logic for natively interpreting the JSON data Parse is transmitting.
At a high level, Parse uses MongoDB for its core database and is entirely hosted using AWS (Amazon Web Services). The entire architecture is highly complex and is not something you could just drag and drop onto your own software stack or hardware backend.
To help give you a better idea of how Parse achieves all of their services, here's an interesting presentation their Dev Ops team gave at an AWS convention. Suffice it to say, hosting the backend services for over 180,000 apps requires a complex infrastructure and that is the "secret sauce" so to speak for Parse and is why Facebook purchased them for over $85 million two years ago.

sync existing oracle data base with Couchbase server

We hope to implement Couch base Mobile for our mobile application to add the offline support.
Is it possible to sync our existing oracle data base with Couch base server.
Our mobile application developed using xamarin and it is a xamarin form application that support the ios, android and windows.
We want update existing oracle database with offline support.
Usually what happens with Couchbase Mobile users is that they use the change worker pattern as refered here: http://developer.couchbase.com/mobile/develop/guides/sync-gateway/changes-worker/pattern/index.html
and also webhooks: http://blog.couchbase.com/sync-gateway-webhooks
This allow mobile users to integrate with external solutions like an Oracle database.

Phonegap App using Application express database

I'm about to make an application using phonegap but the database I have to use is already used by a web app made with oracle application express. So I wanted to know is there a way of creating a web service inside that web app to retrieve the data on my mobile app ?
The second option I was thinking about is not passing by the apex web app, but just trying to use a WS to access the oracle database (with all the problems I will have to face at deployment). Can someone give me some directives ? Thanks in advance.
One quick google search will give you a couple of presentations (1) (2)
About integration between Apex and Phonegap, and a book

Is it possible to use Windows Azure Mobile service with Windows 8 App which requires relational Database?

I am now self-studying how to developing an App for Windows 8 with C# and XAML and I want to use Windows Azure service as a cloud server for my database, just like SQL. I am new to this technology and as far as I know mobile service is not for all-purpose tools, but still, I wonder if I can use it just like SQL, in which many tables are related to each other.
If not, what Windows Azure service I should use instead? Virtual Machine, perhaps?
The way you can simplify it as Windows Azure Mobile service replaces the basic requirement basic of any currently available SQL Database access API instead using WAMS your application can connect to same SQL Database over a Mobile service endpoint available to your app and that what makes independent to any app connecting to WAMS.
WAMS simplify quick creation and access to data backend (hosted in Windows Azure) from any mobile app so yes you sure can use WAMS with SQL DB as long as you have a fixed access scope with your SQL DB requirement. When I say fixed means even when Windows Azure Mobile Service (WAMS) use SQL Database as backend you will be limited within the functionality provided within WAMS framework compare to accessing your DB over API. As you already know there are tone of other things you could do directly with SQL DB (using API or other interfaces) but not by using WAMS. However once the SQL DB is created you still can access it outside the scope of WAMS and still can do the rest.

Resources