Warning: is_writable(): open_basedir restriction in effect. File(D:/inetpub/vhosts/hhz.ch/httpdocs/wordpress/wp-content/uploads/shareaholic/) is not within the allowed path(s): (C:/Inetpub/vhosts/hhz.ch\;C:\Windows\Temp\) in C:\Inetpub\vhosts\hhz.ch\httpdocs\wordpress\wp-content\plugins\sexybookmarks\sexy-bookmarks.php on line 243 Going Abroad | Me – On The Other Side Of The Planet

replacing “Microsoft.Web.Atlas” for .NET 2.0 in 2013 (since IE10 can’t handle it)

It was around 2004/2005 and Visual Studio 2005, when Microsoft made their first steps to support AJAX like functionality for ASP.NET, if I remember right. They did so by releasing a CTP called Atlas. This was soon replaced by ASP.NET AJAX. And later one with .NET 3.0 those basic AJAX functionality (Controls like: UpdatePanel, ScriptManager,..) didn’t need a separate install anymore.

Resources

PDF with detailed information from O’Reilly/Christian Wenz

Problem

Customers complained that certain functionalities of the Web-Application is broken when they use IE10.

Now IE 10 is different(better) than previous versions of Internet Explorer. It embraces standards a lot better and goes the route of HTML5 CSS3.

The project I currently work on is still using ASP.NET 2.0, and … you guess correct Microsoft.Web.Atlas.

Atlas does have some special treatment for Internet Explorer browsers, which now unfortunately is not appropriate anymore for Internet Explorer 10.

To solve this, I have to somehow replace Atlas by a newer approach -that doesn’t break IE10-, without moving the solution to use ASP.NET 3.0 or later.

Solution (?)

First I downloaded the latest installer for ASP.NET AJAX, which is ASP.NET AJAX 1.0. Running the installer on my Windows 7(64-bit), it couldn’t install and rolled back the installation.

I have only Visual Studio 2008, 2010 and 2012 on my machine, so my first guess was I needed Visual Studio 2005 to install it, but there are these templates for Visual Studio 2008, that proofed to me it should be possible to install AJAX 1.0 even without any Visual Studio installed.

I tried to run the installer for AJAX 1.0 again, this time in compatibility mode, and it did complete without problems this time.

As I wanted to reference/replace the DLL the same way that Visual Studio would do, I installed the templates for VS2008, then noticed that I had only the part of VS2008 that comes with SQL Server (for Analysis/Integration/Reporting Services). So I decided to download and install Visual Studio 2008 Web Developer Express Edition, because we had no more 2008 Version at the office. After some binging, I found an official Microsoft site which still features the 2008 download. But unfortunately no templates for ASP.NET 2.0 showed up there, only 3.5 templates. And searching for online templates does open the help.

No need to worry though. After I restarted VS2010, I could add the reference to system.web.extensions, and from the Toolbox I could drag the controls which appeared there now, onto a page. This did register the component/namespace correctly on the page and I could apply it for all pages where it was necessary. The line for registering looks like that:

<%  @Registerassembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"namespace="System.Web.UI"tagprefix="asp" %>

Of course I had to fix some issues in the code, since Atlas and AJAX 1.0 are not 100% same:

– Warning: Control ‘scriptmanager1’ of type ‘ScriptManager’ must be placed inside a form tag with runat=server.

This should be easy to resolve (if your page has a <form>-tag).

– Triggers within UpdatePanel’s changed:

Old: <atlas:UpdatePanel> … <Triggers> <atlas:ControlEventTrigger …> </Triggers> </atlas:UpdatePanel>

New: <asp:UpdatePanel> … <Triggers> <asp:AsyncPostBackTrigger … > </Triggers> </asp:UpdatePanel>

– Property EnableScriptComponents of ScriptManager does no longer exist:

This is no big deal, only have to remove it in the markup. (in the alpha version of Atlas, it controlled if some javascript was included or not, to keep the amount of transferred data low.)

– Property Mode of UpdatePanel was renamed to UpdateMode.

Possible UpdateModes are Always(which is the default) and Conditional.

Note: the UpdateProgress control uses now a setting called DisplayAfter, we can set it to “0” to immediately display the image or information we display during the busy time. Also we have to specify an UpdatePanel that will display the UpdateProgress.

Further Configuration:

In order to remove Atlas completely one has to adjust the web.config’s as well. Especially the hook to *.asmx and those catch-all configuration line. Plus removing the controls

After those changes, almost* all worked well again, even in IE10.

 

Almost*

Yes almost all worked well. Turned out that some controls in the AtlasControlToolkit can not exist without Atlas. Therefore to still use those controls, one has to upgrade the ControlToolkit too.

I did get the latest version from codeplex so I could reference that instead.

 

Airport Düsseldorf

I’m currently sitting at the airport of Düsseldorf waiting for my connecting flight to Bangkok.

giraffe at the airport in Düsseldorf

So I finally got some time to play with my new Nokia Lumia 800. A great phone! I got it for free from a students competition in Switzerland. Microsoft Switzerland is really nice, keeping this anualy contest going on for quite some years now. For more information you can check it out yourself.

Actually it’s quite funny as there were everywhere huge posters of the phone, when I got out of the airport. I had no other chance then play around on my phone a bit, I’m surprised about the good usability of the phone. I definitely expected something different, as I knew only some Windows Mobile 6 Phones, and they definitely were much more of a hassle.

Well there I am now… waiting 2 more hours, and my big journey will begin.

I am a bit nervous, but it’s ok. It will be my first time in asia.

 

That quesy feeling…

… that I always get, after the last semester exam is done. It’s back and more intense then ever before. Now I have no more influence on the outcome.

 

9 Semesters of part time studying, and no paper to show what I did in the end? Possible… but unlikely…

 

I learnt more than ever before, for one single test. Well I didn’t have to aim high, to learn more than for my previous exams, as the sum of learning ranged from 0(zero, nothing!) to around 16 hours.

 

Normally I would start to learn the day (or night) before the test. And often enough that gave me good and sometimes even great results!

This time it was different, I started to learn 4 days before the test. Well I got distracted here and there, but I managed to learn as much as I planned. Therefore it would really be hard if I wouldn’t make it.

At least this time I can’t say that I didn’t learn enough. I understood things much better than last time.

 

Whether I dropped from school or got my bachelor with that test. It will definitely push my future in a direction. Not both possible results will push me in a good direction I think.

But life always goes on 😉

Countdown from 200

I will (hopefully) finish my studies this january.

So after that I am no longer bound to stay in Switzerland any longer. And I did quit my current job as a game developer before the end of November already. With a period of notice of 3 months and some spare days of holiday left, my last working day at my colleagues firm will be the 23.February 2012.

 

I booked a flight to Bangkok that does part on the 24. February to Düsseldorf where I have to change the plane. From there I will be on a direct flight to arrive on the 25. in Bangkok towards noon.

After a stay of 4 days and nights there, I will travel further to the place where I will work from March on: Ho Chi Minh City in Vietnam.

 

Before all this can start I have to get some stuff done.

 

200(.6):  The hours I still have to work 😉

Current ToDo

1. School

I have to pass my last test at school.

2. Work

I have to cut my hours down enough, so that I will get the full salary at the end of my current engagement. As I worked 80% since September, this will not be a difficult task.

3. Move

Move out of my flat. So I have to pack everything together and find the next tenant for my appartment.

4. Leave

Plan everything to leave Switzerland.

5. Family

Take care of my family and my social life.

6. Sports

After all, I need to do some physical activity too.

Most Busy January Ever

What a title. How come I have the time to setup a blog, when I am so busy?

Well, I expect it to reduce the time I need to inform my friends. What I do and what I am up to, you can read here.

For my Swiss-German speaking friends. I‘m sorry but I decided to write in English only. But you can download nice Swiss-German Rap-Songs at panoreima.ch

I’ll explain what keeps me busy soon.