July 2010 - Posts
Make sure you please read the previous blog post on StorageException otherwise this would not make sense. Once we change the code in the constuctor and forget to change the table name this exception would occur. This exception occurs usually when
1. you do not have the table name which you are requesting. This could occur if you try to delete something and try to access it concurrently from some other thread. Or if you do not have the table with the same name in your storage.
2. You may just have the name there in the form of 'Emailaddress' and you are accessing it with a similar name which is CamelCased for example, 'EmailAddress'.
DataServiceRequestException was unhandled by user code
An error occurred while processing this request.
If you follow the post from the previous post, this exception occurs at a different place. Even though the solution is same, the exception is different and hence somewhat misleading. The exception occurs at the save changes line and the user would normally think that the AddObject function ran well.
public void AddEmailAddress(EmailAddressEntity emailAddressTobeAdded)
However, avoid the naming of the EmailAddress in the AddObject method as CamelCasing. So changing it to "emailaddress" or "Emailaddress" fixes it. Again, it could be some other factors owing to which this exception might occur.At the time of writing this post, I had seen difference in the 32-bit
environment and 64-bit environment so please cross check this. Feel free to email me the code and i shall be happy to help.
Sometimes even if we have the fabric running and the role manager is up, we get an exception of this sort.
The code breaks at the line in BOLD.
public EmailAddressDataContext(CloudStorageAccount account) :
this.storageAccount = account;
CloudTableClient emailAddressClient =
new CloudTableClient(storageAccount.TableEndpoint.AbsoluteUri, storageAccount.Credentials);
Easy fix is to change EmailAddress to Emailaddress. For some reasons it would not allow CamelCasing. So please make sure, you just have one capital letter in the name of the table that too at the beginning. Since the table names are case insensitive, you can also name it as 'emailaddress' . However, make sure that you do not access it with a different case. Follow the next post to have a better idea of what I am suggesting.
I recently presented this talk on Jun 9th at Microsoft Offices, Las Colinas. This talk dives deep into the algorithmic analysis and problem solving to get the best preformance using the powerful C# language. It focussed specifically on improving performance on Asp.Net websites. It talks about YDN guidelines to make your websites perform faster.
At the same time techniques to demonstrate how to write modular code without affecting performance were shown. I shall be blogging separately on these topics pretty soon.
Please feel free to leave comments. I am not sure how to upload ppts on the blog as I am new to this. However, I shall be uploading the presentations as soon as I am able to do it.
Tonight I presented at Improving Offices, Dallas. It was a great crowd with some really good questions on Azure. This talk went from Introduction of Azure Table Storage to the best practices in Windows Azure. We discussed the guidelines for addressing the issues of limited provision of indexing in Azure. I shall be blogging on it pretty soon as I don't think there is enough insight currently on partitioning data well.
You can download the Presentation Code here.
Shawn will be putting the talk on his website in video format. I shall update the link then.
Just moved to my new blog. I am trying to upload all my presentations here starting from Austin Code Camp, this year. For presentations earlier to this, please email me or follow links at twitter @csdhall.
This presentation covers a talk about fundamental data abstractions in Windows Azure, an in-depth discussion about the power and capabilities of Azure, best practices related to it. It includes scalability vs batch processing guidelines and outlines the different approaches suiting the new business needs. Demos were on introduction to tables, queuue and blobs in Windows Azure. Azure is a great platform for start ups and with security been taken seriously in the cloud it actually is supposed to grow leaps and bounds. Since Microsoft has done it right and is putting a lot of money and talent into it, I am sanguine that it will take over a greater share of market in next couple of months.
You can listen to the talk at Austin Code Camp talk