tag:blogger.com,1999:blog-27590890759032994992024-03-14T03:19:03.083+11:00AntsCodeAnthonyhttp://www.blogger.com/profile/00680252080248363199noreply@blogger.comBlogger15125tag:blogger.com,1999:blog-2759089075903299499.post-56377901441836764682014-02-25T16:43:00.004+11:002014-02-25T16:47:45.547+11:00Enabling HTTPS in Azure via worker InstanceInput endpointsWow, what a rare and specific thing you might want to do - but we certainly did, and since there was nothing I could find in the Google Brain, I had to figure it out for myself...
In a nutshell, here's how to do it:
Create the endpoint via the role properties in your cloud service project. Since https is not an option, we need to select tcp:Also don't be deterred by the fact you can't select Anthonyhttp://www.blogger.com/profile/00680252080248363199noreply@blogger.com0tag:blogger.com,1999:blog-2759089075903299499.post-43812005142025275282014-02-18T17:24:00.000+11:002014-02-18T20:13:08.971+11:00Fixing Word Margins in Reporting Services 08We don't use Report Services with SQL Server, but the Report Viewer control to render reports from Azure table Storage.
That said, I believe the rendering engine is the same in both cases - and in both cases the 08 version renders header & footer content outside of the document margins.
See this Microsoft Connect discussion on the issue, and Microsoft's good 'ol "its by design" response :)
Anthonyhttp://www.blogger.com/profile/00680252080248363199noreply@blogger.com0tag:blogger.com,1999:blog-2759089075903299499.post-79280241554127960962014-01-21T13:51:00.001+11:002014-01-21T14:06:22.716+11:00Xero API .NET Client - Implementing your own ITokenRepositoryWe recently integrated our FoodStorm product with Xero, and we decided to use their .NET API. Most of it is pretty straightforward - except for dealing with access tokens in .NET as their documentation is lacking somewhat.
So here is a bit of a brain-dump of my experiences...
To perform any API operation, you need to first instantiate a Session. In our case we have Partner access, so we need toAnthonyhttp://www.blogger.com/profile/00680252080248363199noreply@blogger.com2tag:blogger.com,1999:blog-2759089075903299499.post-69703740920975077642011-02-23T00:19:00.007+11:002011-02-23T02:07:42.502+11:00Running a ClickOnce Application as AdministratorI've been using ClickOnce to deploy our Windows apps for about 12 months now, and it's been an absolutely painless way to handle installation and application updates.
One of the reasons it's so painless is that ClickOnce doesn't require admin privileges to install apps on a machine. However this also means that you cannot launch a ClickOnce app with admin privileges.
Until recently this hasn't Anthonyhttp://www.blogger.com/profile/00680252080248363199noreply@blogger.com5tag:blogger.com,1999:blog-2759089075903299499.post-35848671359118985092010-03-24T08:37:00.006+11:002010-03-24T09:26:51.957+11:00Table Storage Backup & Restore for Windows AzureIf you're using Table Storage in Windows Azure you're probably well aware of its real-time replication of data, which for me was a key factor in deciding to use the technology.
That said, I think the ability to perform a traditional database backup or restore (i.e a snapshot of the database) would be a really nice feature - which Table Storage does not currently support. Here are my top reasons Anthonyhttp://www.blogger.com/profile/00680252080248363199noreply@blogger.com6tag:blogger.com,1999:blog-2759089075903299499.post-75663761141533341422009-12-23T21:45:00.008+11:002009-12-24T10:58:23.251+11:00Azure Table Storage Client ExtensionsAzure Table Storage is my storage technology of choice for my Windows Azure App. For anyone who’s used this technology, you’ll be well aware of its limitations. One in particular is its lack of relational functionality (aka table joins). For example, take the following LINQ query:
from o in context.Orders
join c in context.Customers on o.CustomerId equals c.CustomerId
select new
{
o.OrderNoAnthonyhttp://www.blogger.com/profile/00680252080248363199noreply@blogger.com3tag:blogger.com,1999:blog-2759089075903299499.post-57621637681748065872009-11-16T08:53:00.007+11:002009-11-17T07:26:35.417+11:00Development Storage Sync (Azure November 2009 SDK)With the November 2009 release of the Windows Azure SDK, Microsoft have changed the development storage to support dynamic schemas - just like the real Azure environment.
Because of this change, there is no longer a need to run the Create Test Storage Tables function (hoorah!) - which also means my existing Development Storage Sync tool is now defunct too.
However not all is sunshine and Anthonyhttp://www.blogger.com/profile/00680252080248363199noreply@blogger.com5tag:blogger.com,1999:blog-2759089075903299499.post-79587551537165964382009-10-31T07:49:00.002+11:002009-11-05T08:11:45.668+11:00Parsing Multipart Form Data in a WCF ServiceRecently I needed a web page that uploaded files directly to a Windows Communication Foundation (WCF) service. On the face of it this seemed achievable: plonk a file upload field on my web page, and write a WCF service that accepts a file Stream.
So I did this, and it sort of worked - however the file that arrived on my server was all garbled! Then I remembered that a browser does not just post Anthonyhttp://www.blogger.com/profile/00680252080248363199noreply@blogger.com3tag:blogger.com,1999:blog-2759089075903299499.post-14675646274140518102009-09-17T08:25:00.015+10:002009-09-26T11:53:41.540+10:00Non-Destructive Test Storage Table CreationFor those of you working with Windows Azure Table Storage, I'm sure you're aware of the Create Test Storage Tables feature in Visual Studio:
This function looks through your cloud application for classes derived from DataServiceContext, and then creates matching tables in your local SQL 2008 database.
The frustrating thing is, every time you run Create Test Storage Tables, it blasts away yourAnthonyhttp://www.blogger.com/profile/00680252080248363199noreply@blogger.com0tag:blogger.com,1999:blog-2759089075903299499.post-5150607799174753042009-08-24T17:22:00.012+10:002009-11-04T08:57:27.187+11:00Row Grouping for YUI Data TableI've previously harped on about how great the YUI Data Table is so I'll spare the introduction.
For all its bells & whistles, what the data table doesn't offer is grouping of rows - i.e. you're limited to 1 level of data. But thanks to the YUI data table's extensibility, there's plenty of opportunity to roll your own - which is what I did:
Download from GitHub
The YUI data table Anthonyhttp://www.blogger.com/profile/00680252080248363199noreply@blogger.com30tag:blogger.com,1999:blog-2759089075903299499.post-41473711687864274692009-07-24T10:09:00.009+10:002009-09-02T08:10:15.492+10:00Select Filter for ADO.NET Data ServicesUPDATE 2 Sept 2009: Microsoft have now released CTP2 of ADO.NET Data Services, which now supports projections. You'd be crazy to use my solution now, so I've removed it from CodePlex. You can download CTP2 from here: http://blogs.msdn.com/astoriateam/archive/2009/08/31/ado-net-data-services-v1-5-ctp2-now-available-for-download.aspx Anthony.
If you want to build a service layer for your app in aAnthonyhttp://www.blogger.com/profile/00680252080248363199noreply@blogger.com1tag:blogger.com,1999:blog-2759089075903299499.post-75458253092189316052009-06-27T21:40:00.007+10:002009-08-25T08:22:01.143+10:00YUI DataTable with ADO.NET Data ServicesThe Yahoo User Interface library (YUI) is an awesome client-side UI library, and ADO.NET Data Services is an equally awesome server-side framework for exposing a service layer for your data.
However, there is little documentation on how to get the 2 technologies to talk to one-another. Microsoft are pitching ADO.NET Data Services to marry up with Sliverlight - and rightly so, but like a lot of Anthonyhttp://www.blogger.com/profile/00680252080248363199noreply@blogger.com0tag:blogger.com,1999:blog-2759089075903299499.post-32372023002163746682009-05-07T15:28:00.011+10:002009-08-25T08:25:11.426+10:00Strip Formatting on Paste using YUI Rich Text EditorI’ve been using the Yahoo User Interface Library (YUI) in my web app, and one particularly cool component is the YUI Rich Text Editor: its cross-browser compatible, fully extensible, and best of all it’s free :)
For all its greatness, one thing I’ve struggled with is that if you copy & paste stuff from another app into the YUI Editor, all of the original formatting is maintained. Most of theAnthonyhttp://www.blogger.com/profile/00680252080248363199noreply@blogger.com64tag:blogger.com,1999:blog-2759089075903299499.post-21744170250874522022009-03-09T12:25:00.021+11:002009-08-25T08:29:44.971+10:00Nested Mail Merge Regions using Aspose.WordsI've been looking into various solutions for merging Word documents server-side, without resorting to Microsoft Word Automation as it is apparently the devil.
After trialing a handful of solutions on the web, I've concluded that Aspose.Words has some killer features, such as doc and docx support, and PDF file export. Furthermore, unlike competing products, I won't have to sell a kidney to pay Anthonyhttp://www.blogger.com/profile/00680252080248363199noreply@blogger.com11tag:blogger.com,1999:blog-2759089075903299499.post-10285067410591047132009-03-08T10:00:00.001+11:002009-08-25T08:30:39.488+10:00Obfuscating .NET code on the cheapI recently needed to obfuscate a .NET component I wrote, and never having done this before I started looking into the various options available. Being a small side project I really didn't want to spend big bucks.
The obvious first choice was to try out the Dotfuscator Community Edition that ships with Visual Studio as it's free. I obfuscated my component, and then disassembled it using Red Anthonyhttp://www.blogger.com/profile/00680252080248363199noreply@blogger.com1