I am planning on a photo app, and want to know how I could upload/ download images from windows phone 7 to the blob storage as well as access the table storage. I don't mind placing the access key on the application, since the app is planned to be distributed internally only.
Since the Azure API is not available can somebody tell me how I can do the same ?
You can:
use Azure BLOB API directly (including key on the phone)
Abstract Blob operations behind a server-side web service
I also recommend to check out article by Steve Marx on accessing Azure Blob from Silverlight. It covers a wide range of topics including Shared Access Signatures and how to actually work with Azure Blob API.
I would not place the Access key into any client device. You should think about creating a webservice which can handle the upload for you. That way your phone has not to know about the Azure API.
Try to decouple your Phone 7 application from the backend implementation. Windows Phone 7 supports XNA and Silverlight applications so I guess you're going for the latter. That implies that you need to connect to a service anyway. I would suggest that you put all the backend and Azure specific logic behind a WCF service and call that from within your application.
Related
I am developing a windows phone application which will track user movements and collects some statistics. I want to store this information at some place (if user permits and this data wont shared with anyone) so that I can read that data again.
Any ideas on how I can do this in windows phone ?
You basically need a web service. You can use Azure Mobile Services, your own hosted or on Azure web service. Or you can use any other number of services such as Buddy or Parse. It's up to you to decide depending on the pricing and features of each service.
One way is to use Azure Mobile Services to store data off to the cloud. There's a tutorial here for Windows 8. It looks like you've tagged the question with Windows Phone 7, though, which the mobile services package isn't available for (that I know of). In that case you can create a webservice that your phone app can send data to, which can then store it wherever it pleases - a database, Azure Table storage, or wherever.
you have three options
1 ) If you want to store it locally then use : IsolatedStorage for Windows Phone.
2 ) If you want it to be somewhere outside your device : Write your own service code and connect it to a database (one end) and give a call to it from your windows device (other end)
Service not necessarily has to be Azure ... You can write any service connect it to ur database and store the value there.
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.
I am working on creating a Windows 8 application. UI is using HTML5. Using WinJs I am calling a WCF service that returns a datatable used to build out the UI. All that is good.
I would also like to create a Window Service that gets packaged up with the application, so when someone download/installs it gets unpackaged and the windows service is started/executed. Is this type of configuration possible?
The WCF service today is a web service, but I would like to make it a windows service. The idea is to make everything self contained. This would allow me to make it available in the Microsoft Online store - if I wanted to go that route.
Windows 8 Applications don't support installing services. The best you can do is install a service separately.
Your WCF service should be decoupled from your app and most probably running on a different machine! I am pretty sure that the they are not going to allow you to install or run services in context of a Windows Store App.
Installing a windows service is not an ideal approach for any Windows 8 application. I understand that you want to make everythig self contained but, why as a WCF local service then? Why don't you consider having it has a data access layer in your app itself? Just a thought.
REGARDING CLIENT SIDE
Web services are separate projects and separate deployment models. You can have one Visual Studio project for the Windows 8 client app and one project for the Web Services side.
Windows 8 apps have several options for saving persistent data, such as endpoints for consuming web services.
There are several consideration when storing Windows 8 application data, such as the location of web services to be consumed.
Windows 8 Application data also includes session state, user preferences, and other settings. It is created, read, updated, and deleted when the app is running.
There are 3 types of dimensions to consider. The system manages these data stores for your app:
(1) local: Persistent data that exists only on the current device
(2) roaming: Data that exists on all devices on which the user has installed the app
(3) temporary: Data that could be removed by the system any time the app isn't running
As a developer, you concern yourself with a couple of objects to persist application data:
The first container object is ApplicationDataContainer. The other is ApplicationData. You can use these objects to store your local, roaming, or temporary data.
REGARDING SERVER SIDE
Your Windows 8 Client app will consume http-based web services.
Most developers deploy web services to the cloud to be consumed by iOS, Android, Windows, and other server side services.
Windows Azure is a cloud offering that makes exposing services to clients very simple.
You can leverage either cloud services for robust solutions or the lighter weight Azure Web Sites.
You can typically choose either of these two project types to create web services:
(1) Windows Communication Foundation WCF; or
(2) ASP.NET Web API, which is included with MVC version 4.
WCF has been around longer and has historically been the primary choice for developers when it comes to exposing services.
Microsoft's more modern concepts about web services relate to the ASP.NET Web API, which truly embracing HTTP concepts (URIs and verbs). Also, the ASP.NET Web API can be used to create services that leverage request/response headers, hypermedia, etc.
I am learning how to develop Windows 8 Metro style apps but i couldn't found a way to store user data in SQL Server for example.
What could i use or how to store user data.
You cannot access local "desktop services" from the Metro app. So you will not be able to communicate with a local SQL Server.
You can use online services that store your information or you can use local storage.
Take a look at:
How to store and retrieve local application data
ApplicationData sample
That question is also debated here and here
You can use SQLite for Windows Runtime
Here is a blog post explaining how to use it:
http://timheuer.com/blog/archive/2012/08/07/updated-how-to-using-sqlite-from-windows-store-apps.aspx
There are couple of ways of storing data - Roaming Settings (if you want the same data to be available across all the win8 devices he has installed your application), Application Settings in Isolated Storage. About storing data in SQL server, as you cannot deploy sql database with Metro app, you need to have a client-server arch to host your service in front of a sql server db.
In addition to the answers you've already gotten, don't forget standard HTML5 localStorage, which should work across platforms and therefore help code reusability. What's not a standard is how much space you're allowed, but the de facto standard amount is about 5MB in all platforms. It might be more on Windows 8 for Metro style apps, but that's just a guess.
Does anyone know if its possible to connect to Azure blob storage from a VB6 App and, if so, how would you do it?
I've got a CMS written in VB6 and I need to offer uploading images and files to the web server. The idea is that we'll store images and files in Azure blob storage but seeing how I'm not using the .Net framework how could I do it? If at all.
Thanks
Steve
A VB6 CMS that uses Azure? +1, Rock and roll!
I think I would write a .Net component to access the Blob storage, make it COM-visible, and call it from VB6 via COM.
I might be completely off, but I think the easiest way to access Azure is from a web service that is actually running on Azure. So I would write a web service that's sitting on Azure and then hit the web service from VB6.
There are a number of libraries out there that allow you to access Web Services from VB6.
Can't you just use a simple PUT via WinHTTPRequest, etc?
http://msdn.microsoft.com/en-us/library/dd179451.aspx