MVC Browser history provider for azure–trying an implementation for 3 hours

first, implement  IBrowserUserHistoryRepository  – that means implement:

public void Save(IEnumerable<BrowserUserHistoryData> history)


Azure have PartitionKey/RowKey – I have to add a new class.

Also or connectiing, I have to put


connectionString="UseDevelopmentStorage=true;" /


I tried to add a bulk history :
The result was:
Unexpected response code for operation : 0
<add key="TableStorageEndpoint" value=""/>
And one hour has been gone.
Run dsinit to have storage emulator:
No connection could be made because the target machine actively refused it

modified code to old Azure code:

now the answer was:

One of the request inputs is out of range. – All letters in a container name must be lowercase.

Tried that – same result:

One of the request inputs is out of range.

Maybe timestam is wrong? No…

Now debug with Fiddler :



Added to connection string:


 And see this in Fiddler :



: base(UserName, UserName)
So the problem is that RowKey does not support url values.
Now , after removing url from the RowKey  - and put username, the error was:

The specified entity already exists

Another hour passes


Now, that it works, thinking about rowkey and partitionkey : no username + url => put date.ToString("yyyyMMdd_HHmmss_tttt")

0:The specified entity already exists.

Oh no, not again?

Look tables =>20121220_064024_AM -  ok, it should be


0:The specified entity already exists

Again? debug, please

The real problem:

Forget about sending whole items history - not just not saved ones…
Now it works – kind of

Server Error in ‘/’ Application.

The method or operation is not implemented.

public IEnumerable<KeyValuePair<string, int>> MostUsed(int Count, DateTime? date)
Line 80:         {
Line 81:             throw new NotImplementedException();
Line 82:         }
Line 83: 
Implementing MostUsed(int Count, DateTime? date) 
Research about filter with data -
Research about GroupBY – not supported!
So now thinking about a way to STORE the data in a convenient format to can retrieve…
 It must take into consideration Count for a date and Count for all dates( date can be null) – AND BOTH THE FACT THAT THE OPERATION WILL BE DONE PER USER.
Time to think – because another hour has passed!