In case you haven’t seen it, ScottGu has announced that Entity Framework is following the lead of the Windows Azure SDKs and ASP.NET MVC, ASP.NET Web API and ASP.NET Razor and is now Open Source. To be clear, Microsoft are still developing, maintaining and supporting Entity Framework releases, but development will be in the open on codeplex and the team will accept community contributions.
For more info
• Read ScottGu’s post (http://weblogs.asp.net/scottgu/archive/2012/07/19/entity-framework-and-open-source.aspx)
• Read the Entity Framework’s team post (http://blogs.msdn.com/b/adonet/archive/2012/07/19/entity-framework-and-open-source.aspx)
• Visit the Entity Framework codeplex page (http://entityframework.codeplex.com/)
• Read the “How to contribute” series (http://blog.oneunicorn.com/2012/07/19/so-you-want-to-contribute-to-ef-part-1-introduction/)
The Windows Azure Training Kit June 2012 Update is now available. The June 2012 update includes 42 step-by-step hands-on labs and 20 presentations covering the new Windows Azure features. Some of the highlights of this update include:
- 12 new hands-on labs for Windows Azure Virtual Machines
- 11 new hands-on labs for Windows Azure Web Sites
- 2 new hands-on labs that demonstrate Windows Azure with Windows 8 Metro-style applications
- New hands-on labs for Node.js and PHP using Mac OS X
- Updated content for the latest Windows Azure SDKs, tools, and new Windows Azure Management Portal
- New and updated presentations designed to support individual sessions to a full 3 day training workshops
You can download the training kit from the download center here: http://bit.ly/WATKJune2012
Just like past releases, the full training kit package (213MB) is a self-extracting exe that will unpack all of the hands-on labs and presentations to your local machine. You can then browse through the hands-on labs as HTML or the PowerPoint presentations locally. Alternatively, you can download the Training Kit Web Installer (2.4MB) and selectively choose individual hands-on labs or presentations.
I have been working as a consultant for some time on a back-end project that was to run both in “self-hosted mode” (aka Windows Service) and in Windows Azure.
We had adjusted some minor details in an OData endpoint (aka WCF Data Service), and tested it “in self-hosted mode”. When I was done with the testing I redeployed the solution to Azure.
And as soon as I accessed my service, the server crashed with a 500-Internal Server error. I tested some other services, but they was working just fine.
Based on earlier experiences I guessed that some DLL’s was missing and since there was several people in the project, not all focusing in Azure, I was guessing some DLL’s had lost it “copy local=yes” attribute.
Since the solution is quite large, I had to use some time to verify all this – but I didn’t find anything special.
I added “copy local=yes” some DLL’s that I was pretty sure was not in Azure, and redeployed to no help.
I even used the nice service http://gacviewer.cloudapp.net/ to help me locate bad configuration to no help.
And the error message from WCF was not very helpful. Internal server error.. yeah right.. See server logs, yeah right – nothing in Event log or IIS log.
After some research, I found an article describing how to enable debugging output from WCF: http://blogs.msdn.com/b/phaniraj/archive/2008/06/18/debugging-ado-net-data-services.aspx ‘
- Set a tag in the source code or via enable Config, I prefered the tag.
- [System.ServiceModel.ServiceBehavior(IncludeExceptionDetailInFaults = true)]
- Set UseVerboseErrors to true in the ServiceConfiguration
Now the WCF service gave me something more than 500-Internal Server Error. “The server encountered an error processing the request. The exception message is ‘Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.’” and the stack trace.
I noticed something odd in the stack trace, a mention of the function “SyncInvokeProcessRequestForMessage”. This was helpful, as I knew someone has modified the Sync logic in the back-end system.
Some more research, and I found this article “How to: Deploy Sync Framework to Windows Azure” – http://msdn.microsoft.com/en-us/library/ff928660(v=sql.110).aspx.
As it turns out, you have to put on your Azure Black Belt to actual get your deployment to Work in Azure when Sync is involved.
By using the recipe in the MSDN article I was able to get the solution to work, but Microsoft – come on – this needs to be much easier!!
I have an old Compaq laptop running windows XP complete with a develeopment environment for an important customer. The laptop has a complete development environment for some old code (read: Visual Studio 2005, VB6, Sybase, including valid licenses for 3 party components).
Since the machine is critical in the maintenance of the old code I try to take good care of it. The performance is not great, but I manage (1,6Ghz cpu, 1 GB RAM, 60 GB disk).
But the HW is getting old – and I am starting to worry about that the laptop might one day not wake up when I try to turn it on, so I want to virtualize the OS and the programs – so I can move the virtualized PC to some HW with better performance, and with the possibility to easily back up the complete virtual pc.
So I embarked on the journey…
To virtualize a PC you can use the free tool Disk2VHD from Sysinternals. Disk2vhd is a utility that creates VHD (Virtual Hard Disk – Microsoft’s Virtual Machine disk format) versions of physical disks for use in Microsoft Virtual PC or Microsoft Hyper-V virtual machines (VMs).
After a relatively short time I had my VHD which I tried to boot up in Virtual PC. Well, it actually booted on the new HW but after logging in the Windows Activation kicked in, and asked for a license key. No problem, I thought, I had the license key ready – it was on the sticker on the laptop. Windows promptly said that the license code was not valid.
Some research and it turns out that the license code that is labeled on PC’s that are OEM manufactured (IBM, DELL, HP, COMPAQ,++) isn’t valid if you try to activate the OS with Microsoft. Windows XP OEM edition actually reads areas of the BIOS to detect if the OS is running on the OEM PC that it is made for, and if not, it decides it is not activated and asks for a license code. If the BIOS is valid, “Pre Activation” as it is called kicks in and activates windows without talking to Microsoft.
The catch here is that whatever (it seems..) license code you give to the OEM version of Windows, it just says it is not valid. (If anyone knows different, please let me know).
Some more research, and I found an article describing “How to Change Windows XP Version Between Retail, OEM and Volume License Channel“. Perfect!
In short: To upgrade from OEM to RETAIL version of Windows XP you could boot from an Windows XP CD with the RETAIL edition and “Repair” the OS. After doing that, windows would ask for a license key for the RETAIL edition of Windows XP. Luckily I had laying some old Windows XP cd’s and some valid license codes.
Then I did something I really shouldn’t have done – I followed this advice and actually did this on my production laptop (after trying on the VHD image with no luck). To my defense it was starting to get really late in the evening.
After “repairing” the OEM version to the RETAIL version, Windows XP asked (as expected) for the License Code. I punched in the code, and pushed “Next”. Nothing happend! Reboot, try again, Nothing. Reboot, try again, wait until next morning, nothing..
So now I had my old laptop in a none functional state, and I have a deadling on a project where I need to use the tools inside the laptop. Where is the “regret” button when you really need it…
Ok, some more research, and it turns out that one possible way to make Windows NOT ask for the license code is to “repair” it back to OEM. The problem is that I do not have the OEM disks for Windows XP (I don’t know if they really exists outside the OEM factory).
It turns out that there are OEM CD’s available if you look at the right places (You probably guessed torrent, which is pretty correct). After “finding” the Windows XP SP2 HP OEM cd, I was realy hoping this might get my Windows back into the original state.
Well, after booting the OEM CD, “repairing” my Windows – I am now able to boot up my laptop and log in. Relief is not a strong enough not word for what I was feeling now. According to the dictionary it is close “relief – a feeling of cheerfulness or optimism that follows the removal of anxiety, pain, or distress”
But things didn’t go as planned, the code deployed and “everything” worked – except there was no sound. I then blamed the “bug” on the unplanned code change I did to set the output volume to max.
Since the last weeks has been pretty busy I didn’t have the time to immediately try to debug the reason, but during this week I had to do some development on the kit, which included network traffic.
And – unexpectedly – the network socket’s didn’t work. First I did some review of the code and the network configuration, before I realized that this must be something with my hardware.
Can it be that some static-electricity had damaged my Dev Kit ?
I know you can’t physically see such damage, but I started to inspect the Dev Kit. And after some initial inspections on the top layer of the PCB I turned the Dev Kit around to check its back side.
And here I found the problem.
On the Backside of the Dev Kit the actual ChipworkX module is mounted in a SO-DIMM connector, not welded to the PCB.
And in my case, the module was askew on one side- some pins where connected, but many pins was not connected. How the module actually was able to work in this condition I do not know.
I inserted the module back in its connector, and now both my network and sound was working!
Now I remembered discussing ChipworkX shortcomings with GHI, where they told me that this module differed from the other modules in two ways:
- The module could detach itself from the connector if the devices is subjected to shaking
- The module is NOT designed for cold weather (only from 0 to +70 Celsius)
So in future projects, make sure that the module is welded to the PCB if you are going to shake it :-)
Needless to say I am super excited and I can’t wait for the keynote for tomorrow morning.
If you are not here – or if you are here and want to stay updated – check out the Article “How and where you can watch the Build Windows event keynote and be part of the excitement” which as lot of extra information including how to see the keynote streamed live. And make sure you follow the twitter hastag #BldWin
If you are interrested in Windows8, Microsoft has created a blog called “Building Windows 8 - An inside look from the Windows engineering team”. It has already some exciting blog posts.
There are a lot of rumors and predictions, one of my favorite rumor is that we may get a Windows8 table to play with. Fingers crossed.
This blog by Robert McLaws has some interresting predictions: http://www.windows-now.com/blogs/robert/my-predictions-for-this-weeks-pdc-2011-oops-i-mean-build.aspx
Last week I was invited by Microsoft to do a presentation on SQL Azure at TechDays here in Norway.
As always I like to be well prepared, so building the slides and doing a complete background research – in case of unexpected questions – was neccesary. This was fun and I learned quite a few new things doing this :-)
My presentation was just after the BI guru Rafal Lukawiecki (which has 6 “Best Speaker” from TechEd), so it was a bit like jumping after Wirkola, but Rafael was very kind and helped me to get rigged before my presentation and even helped me calm my nerves.
Feedback from the presentation was nice, thanks to all of you that voted green and yellow. Luckily, no red lables :-)
Newsflash on Sync Framework V4
During my presentaion I spoke about several sync technologies, including Sync Framework V4 that Microsoft had decided to drop support for, but was going to make the source available.
Today Rob Tiffany announced that the Sync Framework is now open source. Check out his blog for more details: http://robtiffany.com/sync-framework/sync-framework-v4-is-now-open-source-and-ready-to-connect-any-device-to-sql-server-and-sql-azure
The bits are hosted by MSDN at http://code.msdn.microsoft.com/Sync-Framework-Toolkit-4dc10f0e