Tuesday, December 6, 2011

Windows azure assembly not listed under .Net tab

while developing azure application, i stuck with a strange issue.

When i tried to add windows azure assemblies, i was not able to find them under .Net tab on add reference dialogue.

after spending some, I was able to fix this issue. here i have narrated whole problem. hope this can save your time.

Recently I was writing application to rad data from windows azure table storage. I have created windows application to display data from azure table storage.

I need to query data from azure table storage, using windows azure SDK.

These assemblies are:

1) Microsoft.WindowsAzure.Diagnostics
2) Microsoft.WindowsAzure.StorageClient

When I click on Add Reference in my windows application, I was not able to find any assembly in the list of .Net assemblies.

I have tried but not able to find exact reason on this issue. Then after I realized that this was working on my previous application. It was web application.

I have compared all the properties of both the project and find out exact problem.

Cause of problem:

  • In the project properties we have “Target framework” option, when I see for windows application it was set to “.Net Framework 4 Client Profile”. See figure-1.

clip_image002[4]

  • So I was not able see windows azure assemblies under .Net tab.
  • When I inspect my web application, it was set to “.Net Framework 4”. Here I was able to see all windows azure assemblies. See figure-2.

clip_image004[4]

So it was finalized that when there “.Net Framework 4 Client Profile” is selected as “Target framework”, we will not able to reference windows azure assemblies .

Behaviour of this issue:

Because of this setting you can face following issue.

1) You will not able to see windows azure assembly in .Net assembly list.

2) You will not able to reference windows azure assemblies in your application.

3) If you have any class library which includes reference of windows azure assemblies,

And you are trying to add this assembly into your project. Assembly will be added but

It will give you “are you missing an assembly reference?” error.

Resolution:

If you face this issue, you can go to project properties and change “Target framework” To ”.Net Framework 4”.

Microsoft has delivered a new target framework type, to optimize for client applications which run on client only; it doesn’t include windows azure assemblies.

You can see more about .Net Framework Client Profile at

http://msdn.microsoft.com/en-us/library/cc656912.aspx