Welcome to Michaels Blog

All posts published in 2005

Blog of latest news, updates, and stories for developers

Ajax.NET Professional Beta 5.11.24.1 available

I posted a new version to the Google group [1]. Attached you will find a beta version of the next version. I had to recode a lot of parts to get the queue working correct with 2 http connections. Now, if you add this assembly you have to be careful if you use inheritance from the AjaxPro.AjaxRequest. You have to inherit from AjaxPro.AjaxClass instead, now.

Posted by Michael Schwarz on Thursday, November 24, 2005


XmlHttpRequest not working

The last weeks I done a lot of test because of the memory leaks using .innerHTML or events (closures). When building some test pages I ran into a problem. I reached 65.000 handles for iexplore.exe. From time to time I got a dialog box asking if I want to send data to a different location (the same question you get if you post data to a different domain). I clicked on yes, I clicked on no - both buttons are working, and my AJAX method, too. But some requests later I got the dialog box again, ...and again.

Posted by Michael Schwarz on Thursday, November 17, 2005


Fixed pre-release for Exception Handling

I posted a pre-release version to the Google group, download the latest pre-release version here [1].

Posted by Michael Schwarz on Friday, November 11, 2005


AutoComplete AJAX Control with Ajax.NET Professional

I have finished a more complex auto complete textbox you can use in you Ajax.NET Professional [1] web application. The control can be added on the server like other HtmlControls:

Posted by Michael Schwarz on Friday, November 11, 2005


Using WITH(...) in JavaScript

Some days ago I had a look in some Visual Basic source code and found the WITH statement there. I was thinking about how I can use this in JavaScript code. Below you will find a very simple script that allows you to use the With method (that will reduce your source code size of JavaScript files):

Posted by Michael Schwarz on Thursday, November 10, 2005


AJAX problems for newbies

I have some items I learned about AJAX (or Ajax.NET Professional [1]) developer newbies:

Posted by Michael Schwarz on Wednesday, November 9, 2005


Ajax.NET Professional and the "missing" context

I had done a lot of changes to the JavaScript methods. With the new version I had removed the context that you could provide to have something like a "this" context.

Posted by Michael Schwarz on Tuesday, November 8, 2005


Using a Request Queue

I have added a simple feature that will enable queuing for Ajax.NET requests. You can enable the queue with following line: 

Posted by Michael Schwarz on Tuesday, November 8, 2005


My wishlist... ;)

This week I got two mails from different companies asking me: "Michael, what can we do for you?"

Posted by Michael Schwarz on Saturday, November 5, 2005


More controls for Ajax.NET Professional

I get a lot of requests for new controls that are using Ajax.NET Professional [1]. Some don't want to use other controls, they are searching for the best (or right) way to develop such controls. I have added some examples already to my web site at http://www.schwarz-interactive.de/ [2]. Because AJAX controls and web sites have to be developed different to current web applications I will create some more examples.

Posted by Michael Schwarz on Saturday, November 5, 2005


Hey, VB.NET is back...!

I created the VB.NET examples and put the new files online. You can download the latest Ajax.NET Professional library 5.11.4.2 at http://www.schwarz-interactive.de/ [1]. I added the different control examples, too.

Posted by Michael Schwarz on Friday, November 4, 2005


An simple AjaxButton using Ajax.NET Professional

I have created an simple AjaxButton that will only call a method on the server-side code. There are no values sent to the server or back to the client. A new AjaxButton could serialize the form and send the data to the AjaxMethod.

Posted by Michael Schwarz on Friday, November 4, 2005


WebControls/ASCX and Ajax.NET Professional

I put a new example online that will show the use of WebControls and ASCX files: Examples/Special/controls.aspx [1]

Posted by Michael Schwarz on Thursday, November 3, 2005


Opera Technology Preview 9 and XMLHttpRequest http headers

Update: I get one request for the favicon.ico on every XMLHttpRequest request, that is strange, too.

Posted by Michael Schwarz on Wednesday, November 2, 2005


Chat about AJAX and Ajax.NET Professional tomorrow

The next chat will be on Thursday, 3 November at 20:00 UTC. I will use the same AJAX chat at http://treehouse.ofb.net/chat/ ?lang=en [1]. If you have problems calculating the correct time to your time zone use this link timeanddate.com [2].

Posted by Michael Schwarz on Wednesday, November 2, 2005


this.method() and base.method() in JavaScript

I looked around for the problem when you want to inherit from a JavaScript "class" with overriding a method, but I didn't find any solution. Today I tried this, which is working, but not very nice coding:

Posted by Michael Schwarz on Wednesday, November 2, 2005


Ajax.NET Professional 5.11.2.1 examples online

I put the new examples for the Microsoft .NET Framework 1.1 and 2.0 online:

Posted by Michael Schwarz on Wednesday, November 2, 2005


Pre-release 5.10.31.1

I have put online one more pre-release version of the Ajax.NET Pro [1]version. See the list of changes and bug fixes (not complete):

Posted by Michael Schwarz on Monday, October 31, 2005


Pre-release 5.10.28.2

I published a new pre-release to the Google Ajax.NET Professional group [1].

Posted by Michael Schwarz on Friday, October 28, 2005


IJavaScriptConverter and class attribute

If you want to use a converter for your classes you can add the JavaScriptProvider attribute to your class that it will be used without the need of changing the web.config. This will allow developers to use components from third parties without changing their web.config.

Posted by Michael Schwarz on Saturday, October 22, 2005


IJavaScriptConverter are back in the next version

Because I got a lot of feedback that sometimes it would be nice to have my own converter I included the converter interface again. The default converter like IEnumerable, IList, NameValueCollection, HtmlControls (!!!!) , DateTime, all DataSet objects and IDictionary are included as source code.

Posted by Michael Schwarz on Friday, October 21, 2005


IHttpAsyncHandler in Ajax.NET Professional

In the next version I'm using the IHttpAsyncHandler instead of the synchronous handler IHttpHandler. The request now will run in a separate thread that cannot access the HttpContext.Current object. For this reason you have to implement the IContextInitializer interface to get the HttpContext in your class:

Posted by Michael Schwarz on Friday, October 21, 2005


IJavaScriptObject in the new version

With the new version you are able to get the real JavaScript wrapper objects that are used internal to representate the JavaScript objects. This will allow you to post any object from the client-side JavaScript code you want that does not exist as a CLR type:

Posted by Michael Schwarz on Friday, October 21, 2005


AJAX working as a TCP/IP connection

Today I have finished a working demonstration using AJAX as a TCP connection. With that demonstration you can use a HTTP connection as a real TCP/IP connection:

Posted by Michael Schwarz on Friday, October 21, 2005


AJAX in South Africa

My parents are currently on a business trip in South Africa, and they saw this AJAX writing:

Posted by Michael Schwarz on Friday, October 21, 2005


HTTP Limits Connections Per Server

"Clients that use persistent connections SHOULD limit the number of simultaneous connections that they maintain to a given server. A single-user client SHOULD NOT maintain more than 2 connections with any server or proxy. A proxy SHOULD use up to 2*N connections to another server or proxy, where N is the number of simultaneously active users. These guidelines are intended to improve HTTP response times and avoid congestion."

Posted by Michael Schwarz on Thursday, October 20, 2005


Ajax.NET Date Picker Control

AJAX Date Picker is a free ASP.NET 2.0 calendar control that utilizes AJAX techniques to get data from the server without an entire page postback. You can specify the clickable dates on a given month as well as other days like holidays, etc. A great application for this control is for those sites that uses some reservation system to select valid dates. For example a travel site can use this control to render only valid dates. This controls limits the user on what dates to click. As a result you have a hybrid client/server validation.

Posted by Michael Schwarz on Friday, October 14, 2005


Sample chat app using .NET 2.0

You can download [1]the changed chat [2] demo application at the Ajax.NET Professional Google group [3]. This is using an internal version of the library that will not have the memory bug.

Posted by Michael Schwarz on Friday, October 14, 2005


Chat today about Ajax.NET Professional

I got some requests on having chat sessions from time to time. Because we didn't searched for a good chat application we are using http://treehouse.ofb.net/chat/ ?lang=en for a first chat test today:

Posted by Michael Schwarz on Tuesday, October 11, 2005


RSA for JavaScript

I found a nice implementation for RSA on JavaScript maybe used in a ICryptProvider for Ajax.NET Professional to secure the data is sent from the client-side JavaScript to the server and back. For more details see: http://www.ohdave.com/rsa/ [1]

Posted by Michael Schwarz on Tuesday, October 11, 2005


Ajax.NET/Atlas Client Debugging

I read the blog from Rob Chartier [1] and want to show you a feature that is available in Ajax.NET and Atlas. Both libraries are adding debug methods to the client-side JavaScript code.

Posted by Michael Schwarz on Thursday, October 6, 2005


Ajax.NET and System.Web.Caching.Cache

[1]Today I found an article about caching using Ajax.NET. In the article the author said that the Cache object is not working with Ajax.NET. I have done a small example to show how to use the Cache object in AJAX methods.

Posted by Michael Schwarz on Thursday, October 6, 2005


Pre-build to fix prototype problem with third party controls

I have uploaded a new pre-build 5.10.6.1 [1] of Ajax.NET Professional that will fix several bugs.

Posted by Michael Schwarz on Thursday, October 6, 2005


Inline code usage and Ajax.NET

I got some requests on how to use inline code with Ajax.NET. Here is a small demo that will get the server time:

Posted by Michael Schwarz on Thursday, October 6, 2005


Initial AJAX JavaScript objects

In some scenarios you will call an AJAX method direct after the window.onload event. The window.onload event will start an asyncronous method and wait for the response. As you can imagine the call will need some milliseconds to get the data back from the server. If you want to have the data available when the page first renderes you can add following code to you Page_Load event.

Posted by Michael Schwarz on Thursday, October 6, 2005


Awash in the myKB.com Ajax.NET Code

Scott Cate, a Microsoft MVP, has recently upgraded his popular myKB.com [1] site to use Ajax.NET. In this video, he takes us both on a tour of his new code, and at the same time also a little tour of the Pacific ocean!

Posted by Michael Schwarz on Thursday, September 29, 2005


Using Ajax.NET to create a real time user interface

With any web application there will need to be requests made to the web server to get the latest versions of dynamic data.  In an application like bttlxeMail Webmail every little action requires data to be retrieved from the server.  Selecting a message, flagging a message, checking for new e-mail, managing contacts, notes, calendar, meeting requests, etc - all of that data needs to be retrieved from the server.  Typically each request would be sent back to the web server and a new HTML page returned to the user’s browser with the updated content.  For a data-intensive system like ours though such an approach would introduce a serious performance problem, both putting stress of the server and causing long delays for the user.

Posted by Michael Schwarz on Thursday, September 29, 2005


Ajax.NET Professional - Google Group

Because I get a lot of questions several times I have decided to create a Google Group [1] (http://groups.google.com/group/ajaxpro [1]) to have something like a forum available for all Ajax.NET developers. Feel free to join this group [2] and give feedback about using Ajax.NET Professional. The current version of the library is available at http://ajaxpro.schwarz-interactive.de/ [3].

Posted by Michael Schwarz on Thursday, September 29, 2005


AJAX and back button

I had already some discussion about the back button problem with AJAX related applications. In some scenarios we need this behavior, not for every action. But what we should seperate: the back button is not an undo button. I'm not sure if it is possible to create such a undo function. If it is possible the page must call a method on the server to undo all the actions, ... hm, very difficult.

Posted by Michael Schwarz on Wednesday, September 28, 2005


Ajax.NET Visual Studio .NET 2005 Installer

I put a small template installer on my web site at http://ajaxpro.schwarz-interactive.de/download/AjaxNetProfessional.vsi [1]. This Visual Studio installer will add a web site project template for C# and VB.NET.

Posted by Michael Schwarz on Wednesday, September 28, 2005


ASP.NET Spiced: AJAX (MSDN article about Ajax.NET)

From Karl Seguin: Learn how AJAX (Asynchronous JavaScript And XML) can be used to make your Microsoft ASP.NET applications more dynamic and responsive:

Posted by Michael Schwarz on Tuesday, September 20, 2005


Atlas Callback, Timeout and Error Handler

Because we are still missing some more docs about the Atlas Framework I have check the JavaScript files to give you a short overview over the use of how to write callbacks in the same way Ajax.NET Professional [1] is doing this. The JavaScript wrappers are generated on-the-fly, without any caching. If you have a look in the generated files you will see that they are similar to the generated files using Ajax.NET Professional [1]:

Posted by Michael Schwarz on Wednesday, September 14, 2005


Atlas AutoComplete Feature (UPDATED)

Yesterday evening I build some example code for the AutoComplete feature in Atlas. What you need as first it the AtlasCore.js JavaScript which will give core functions to the page:

Posted by Michael Schwarz on Wednesday, September 14, 2005


Atlas Framework Fiddler Plugin

I tried the new Fiddler [1] inspector plugin [2] and it is working for the Atlas response, too! Atlas is returning an JSON string back to the client-side JavaScript that can be displayed as a tree view in Fiddler. Download the free Fiddler inspector plugin at http://ajaxpro.schwarz-interactive.de/download/AJAX.zip [2].

Posted by Michael Schwarz on Wednesday, September 14, 2005


Fiddler Inspector for Ajax.NET Professional

While here at the PDC 05 in Los Angeles I got the request to upload the Fiddler inspector for Ajax.NET Professional calls. Click here [1] to download the latest Ajax.NET Professional library and the Fiddler inspector DLL. Please copy the file AjaxFiddlerInspector.dll to the folder c:\Program Files\Fiddler\Inspectors. The should appear a new inspector called Ajax.NET which will display the request and response in a tree view control.

Posted by Michael Schwarz on Monday, September 12, 2005


Source Code of Ajax.NET Professional

As announced yesterday [1] I put the latest source code of the Ajax.NET Professional Library online at http://ajaxpro.schwarz-interactive.de/ [2], now. You can download the full source code including the small example project written in C#.

Posted by Michael Schwarz on Friday, September 9, 2005


Ajax.NET Professional Update

I have updated the example web site with the latest beta version of Ajax.NET Professional [1]. The current version has fixed some small bugs and added full date support including time zone.

Posted by Michael Schwarz on Thursday, September 8, 2005


Microsoft Atlas Framework auf der ASP Konferenz

Die finale Version von Visual Studio 2005 und SQL Server 2005 kommt im November 2005. Bei der 12. ASP konferenz spielt die neue Version von ASP.NET 2.0 die zentrale Rolle. Neue Controls, 70 % weniger Code und eine Menge mehr, das müssen Sie sich einfach ansehen.

Posted by Michael Schwarz on Thursday, September 8, 2005


Ajax.NET article on .NET Developer's Journal

Vishwas Lele [1]: In the past few months, the design pattern of combining Asynchronous JavaScript and XML (AJAX) to develop highly interactive Web applications has been growing in popularity. High-profile Web applications such as Google Maps and A9 are currently leveraging the combination of these technologies to produce rich client-side user experiences. The individual technologies that compose AJAX are not recent developments; they have been around for some time and have been continuously updated and improved. However, it is the recent confluence of these technologies that is leading to interesting possibilities.

Posted by Michael Schwarz on Wednesday, September 7, 2005


Second beta with caching, token, ... support

I have published the second beta for the Ajax.NET Professional [1] library. Feel free to download the free library including the online example written in C#.

Posted by Michael Schwarz on Tuesday, September 6, 2005


Download new latest beta version for Ajax.NET Professional

I have added a very simple demo page that will show the features are currently in the downloadable beta [1]version. See my new web site at http://ajaxpro.schwarz-interactive.de/ [2].

Posted by Michael Schwarz on Friday, September 2, 2005


Ajax.NET Professional - everyone invited to test the beta

I have put a first beta of the new library that is rewritten to support objects as arguments (like submitting a complete DataSet from JavaScript code), export of enums to JavaScript, script wrappers are cached on the server and marked with the HTTP ETag to save bandwidth, allow encryption of data stream (client and server-side), using Namespaces on client-side JavaScript, ...

Posted by Michael Schwarz on Thursday, September 1, 2005


Implementing Ajax.NET-based Lookup Server Control

Michael Dubakov [1] wrotes on his blog:

Posted by Michael Schwarz on Thursday, September 1, 2005


Caching of AJAX script files

I added the HTTP header value ETag [1] to my scripts that they can be cached on the client. This will fasten up initial loading of the complete page if the scripts are not changed, what is the default on running systems. I think this feature was missing in the old library, all the client-side stuff was sent to the client.

Posted by Michael Schwarz on Thursday, September 1, 2005


Searching for Ajax.NET Professional beta testers...

Hi to all Ajax.NET developers,

Posted by Michael Schwarz on Thursday, September 1, 2005


Sending a System.Data.DataSet to an Ajax.NET Professional method

I have added some small .NET object wrappers to the client-side JavaScript. As an example I have build a DataSet wrapper that you can use to submit a DataSet to the server using AJAX in the same way you are using DataSets on the server-side .NET code:

Posted by Michael Schwarz on Thursday, September 1, 2005


Enums working with the new library

As enums are not working very good using my Ajax.NET library I have added a new implementation of handling enums. Each enum value will be returned as the integer value inside the enum.

Posted by Michael Schwarz on Tuesday, August 30, 2005


Ajax.NET Professional and how we can secure our calls

I had some requests asking if it would be possible to encrypt the JSON string without changing the common.js or any other file. Yes, you will be able to integrate your encryption algorithm. In the first version I will add a simple encryption to show you how encryption will work. For each Ajax.NET method you can define if you want to use it or not.

Posted by Michael Schwarz on Tuesday, August 30, 2005


Ajax.NET Professional Demonstation Site

I'm working on a first demonstration site for Ajax.NET Professional. Maybe you can help me to decide which examples you want to see: AutoComplete, Banners, HtmlUpdater, FormUpdater, ...

Posted by Michael Schwarz on Tuesday, August 30, 2005


Microsoft Atlas Framwork - was bringt uns AJAX?

Das Microsoft Atlas Framework [1] wird erstmals zur PDC 05 in Los Angeles der Öffentlichkeit vorgestellt. Wer es nicht mehr zu einer Anmeldung geschafft hat, ist herzlichst eingeladen die VS2005 Konferenz in Rosenheim bei München vom 30. November bis 1. Dezember zu besuchen. Mehr Infos gibt es im Konferenzflyer [2] und auf den Web Seiten unter http://www.vs2005.de/ [3].

Posted by Michael Schwarz on Friday, August 26, 2005


Combine JavaScript, Ajax and WebControls

There are a lot of ways how to combine these three technologies: JavaScript, Ajax and WebControls. One problem is how a control can be rendered on the client-side JavaScript and on the server-side. If you have a look at http://demo2.pctopp.com/default.aspx [1] (username and password "danny", demo is only working in Internet Explorer 5.x or higher) you can see at the right side a green box with some counting values. If you refresh the page the initial values are already there. On the server I write the initial values as a JavaScript variable to the HTML page using the Ajax.JSON.DefaultConverter:

Posted by Michael Schwarz on Thursday, August 25, 2005


JavaScript and Namespaces (howto)

On one of my last blogs [1] I wrote about the way using namespaces in JavaScript. Some developers asked me how to create namespaces in JavaScript. Following short example will have a registerNS method which will create the necessary objects (our namespaces).

Posted by Michael Schwarz on Thursday, August 25, 2005


Google Talk is cool!

I have downloaded the new Google Talk IM Client [1], really cool! I love the new UI. You can reach me at my Gmail account michael.schwarz. For those of you do not have a Gmail account: https://www.google.com/accounts/SmsMailSignup1 [2] or write me a message (I still have enough invitations). What I am missing is a simple file transfer and getting a notify if someone is connecting. But the VoIP call is working great.

Posted by Michael Schwarz on Wednesday, August 24, 2005


XMLHttpRequest in Internet Explorer without ActiveX Controls

While working on my new library I was looking on the JavaScript code to support more browsers. My first job was to create a XMLHttpRequest wrapper for the Internet Explorer if the "Enable safe ActiveX Controls" settings is disabled. I have done a first example (download script at http://ajax.schwarz-interactive.de/download/xmlhttpifr.js [1]):

Posted by Michael Schwarz on Wednesday, August 24, 2005


BorgWorX Ajax.NET - howto get a free license

Because there are a lot of developers frustrated by the license of the BorgWorX Ajax.NET source code I will help [1] you how to use the source code in your environment. If you send me your email and mailing address including company name you will get a license to use the Ajax.NET source code in your projects. The only thing you have to do is: send bugfixes or new features (C# source code) to one of the authors email address or using SVN (account needed first). You are not allowed to create a standalone AJAX library with the Ajax.NET source code. Build your own controls using the powerful Ajax.NET library.

Posted by Michael Schwarz on Wednesday, August 24, 2005


Google Talk website online

If you have already heard about the Google Instant Messanger client Google Talk [1], the domain is already available: http://talk.google.com/ [2]. This sub domain will redirect to http://www.google.com/talk/ [3] like Gmail and other Google Services are redirecting. So, we have to wait... maybe until tomorrow [1]? See more details on Google News [4].

Posted by Michael Schwarz on Tuesday, August 23, 2005


Very cool DataGrid for Ajax.NET

I got some requests for a DataGrid on the client-side JavaScript. On my own I create small HTML tables either by using the DOM or a simply string. I found one cool control that can be used with the Ajax.NET library: ActiveWidgets Grid [1]. This control can be used with XML, CSV or JavaScript arrays. I have done a small demo and changed some parts that it will accept Ajax.NET DataTables. Do you know any other control that is working on the client-side JavaScript?

Posted by Michael Schwarz on Sunday, August 21, 2005


Using NameSpaces in JavaScript

For those of you still working with the problem of same variable names in JavaScript. Why don't use namespaces on the client, too? On my working library I have added this feature and some namespace-related methods to all my JavaScript files:

Posted by Michael Schwarz on Friday, August 19, 2005


BorgWorX - The Open Source development platform for Ajax.NET

Christian Hubinger has updated the Wiki at http://www.borgworx.com/ [1]. You will find detailed information how you can get a license to use the Ajax.NET library in your projects. Also, Christian has added a info how you can become a BorgWorX developer [2] to submit changes using the SVN repository. A forum will be online next week, too.

Posted by Michael Schwarz on Friday, August 19, 2005


Ajax.NET Support

The first AJAX enabled library for Microsoft .NET (Ajax.NET) is about 5 months old, now. The large acceptance has killed my inbox and I have still about 130 unread emails. Sorry, but I need more time to answer all your emails. If you have only quick questions feel free to contact me using MSN Messenger (passport @ schwarz-interactive.de).

Posted by Michael Schwarz on Wednesday, August 17, 2005


Ajax.NET Professional - what are you missing?

As I wrote on one of my last blogs I'm working on a new AJAX library for .NET. There are a lot of AJAX JavaScript libraries available, and I will have a look on those who are interesting for the Microsoft .NET Framework. Maybe you have one that is very cool or has a lot of features build-in, let me know! Like other libraries or controls I do not want to replace the default postback machanism of ASP.NET. Also some libraries are using a own Page, or using an interfaces that you have to deal with. I still will use something like a automatic register helper method.

Posted by Michael Schwarz on Monday, August 15, 2005


Ajax.NET - Key Benefits and Ideas

I have published my internal slides about the key benefits of the Ajax.NET library [1]. The ideas depend on the feedback I got from developers around the world.

Posted by Michael Schwarz on Monday, August 15, 2005


Download Ajax.NET source code, now!

Update: Have a look at Ajax.NET Professional at http://www.ajaxpro.info/ [1]. The Web site of BorgWorX is not available any more.

Posted by Michael Schwarz on Thursday, August 11, 2005


What is AJAX? And why we (don't) use AJAX...

I read the blog from Wallace What is AJAX [1]? Yes, what is AJAX and why do we want to use AJAX?

Posted by Michael Schwarz on Monday, August 8, 2005


AJAX and the Search Engine Problems

There are already thousands of web sites using AJAX or similar techniques. One problem all of them have is the point that web crawlers will only search for HREF, SRC or some other link tags. I never saw a web crawler that is searching for AJAX JavaScript proxies. I think web developers only see the benefit of AJAX for the speed/performance advantage of web sites. If you want to build web sites that will be reachable through search engines you have to write two sites, one with the usage of AJAX for the human visitor and one for web crawlers that will need the complete HTML/text of the page.

Posted by Michael Schwarz on Saturday, August 6, 2005


Ajax.NET Source Code moved to SediSys

Since the day before yesterday SediSys (http://www.sedisys.com [1]) is the new owner of the source code for the Ajax.NET library. SediSys will make the source code be available as an Open Source Project. Hopefully we can make the Ajax.NET library together a powerful AJAX related free library.

Posted by Michael Schwarz on Friday, August 5, 2005


WebServices and Ajax.NET

Some developers asked me if it is possible to use WebServices (WebMethods) in Ajax.NET. Yes, of course, you can add the AjaxMethod attribute to the method. Ok, you do not want to change the WebService source code? My next release will include the possibility to add a simple JavaScript line in your HTML page to access your web services from the client side.

Posted by Michael Schwarz on Monday, August 1, 2005


Ajax.NET or the Atlas Framework?

I found a lot of blogs and articles [1] that are asking if we should use the Ajax.NET library or the Atlas Framework. My opinion is that it is not easy to compare these two AJAX ideas. Ajax.NET was only a idea to have a data access for JavaScript with nearly the same objects as method argument or results like we are using on the server-side. There are some other companies with nice WebControls that support AJAX functions. What we need is both of them, some WebControls (like auto-complete or livesearch, a grid that will get data while paging through,...) and the possibility to read data with a minimum of code and JavaScript knowledge. The Atlas Framework will be a complete framework where you will get additional controls.

Posted by Michael Schwarz on Thursday, July 28, 2005


Large IIS LogFiles using Ajax.NET

For those of you did not had a look at the LogFiles: using Ajax.NET or any other AJAX library will increase the HTTP requests made to the server. If you have enabled the log files you will get very large files.

Posted by Michael Schwarz on Tuesday, July 26, 2005


Ajax.NET for Microsoft ASP.NET 2.0 (beta)

I have compiled the Ajax.NET library for the Microsoft .NET Framework 2.0 (beta). You can download the ajax.dll from http://ajax.schwarz-interactive.de/download/ajaxbeta.zip [1]. If you have time please give me some feedback if it is running or not in your ASP.NET 2.0 projects.

Posted by Michael Schwarz on Monday, July 25, 2005


Ajax.NET version 5.7.22.2

I updated the latest release of the Ajax.NET library (5.7.22.2) on my website http://ajax.schwarz-interactive.de/ [1]. To download the library click here [2]. The new ajax.dll is not included in the exmaple zip file!

Posted by Michael Schwarz on Friday, July 22, 2005


Ajax.NET and the open source trouble

Some weeks ago I wrote here on my blog that Ajax.NET will go online as an open source project. I tried several hosters for this project but I ran in different problems because I never put source code online using tools like CVS or SVN. Because I want to have the Ajax.NET project an open source project I was searching for developers and companies that have some experience with open source projects.

Posted by Michael Schwarz on Wednesday, July 20, 2005


Ajax.NET is an open source project, now!!

First of all I want to thank you for your help to improve the free Ajax.NET library by sending feedback and ideas. I am happy to give the .NET developers an easy and fast way to implement AJAX methods in their projects.

Posted by Michael Schwarz on Tuesday, June 21, 2005


AJAX in Microsoft ASP.NET 2.0

As you can read on the Microsoft Product Feedback Center the idea of adding AJAX support to Whidbey is to late. But Microsoft will think about it:

Posted by Michael Schwarz on Wednesday, June 8, 2005


Ajax.NET and enums, XmlDocument,...

With the free Ajax.NET Library you can use enums, now. I will export the value as an string:

Posted by Michael Schwarz on Friday, June 3, 2005


Ajax.NET is now supporting all build-in types

Sorry, I still forgot some types. Now, I added all build-in types. You can download the latest Ajax.NET Library at http://ajax.schwarz-interactive.de/ [1]. The current version is 5.6.3.1.

Posted by Michael Schwarz on Friday, June 3, 2005


Ajax.NET and HtmlControls, Request Cache, Namespace Mappings,...

I have released the next version of the free Ajax.NET Library [1]. You can download the latest version 5.6.2.1 at http://ajax.schwarz-interactive.de/ [2].

Posted by Michael Schwarz on Thursday, June 2, 2005


StackOverflowException workaround for Guids (was: System.Data.DataSet Bug)

I got some emails saying System.Data.DataSet will throw a StackOverflowException. I tried several databases and tables, but I never got this error. Now, I found the difference: they are all using System.Guid.

Posted by Michael Schwarz on Thursday, June 2, 2005


Ajax.NET support in future .NET versions??

I added the Ajax.NET idea to the Microsoft Product Feedback Center:

Posted by Michael Schwarz on Tuesday, May 31, 2005


Cojax, an Ajax style code viewer using Ajax.NET

Scott Watermasysk put together a nice example of Ajax called Cojax [1]. Cojax is an ajaxian source code viewer using the free Ajax.NET Library [2] which consists of:

Posted by Michael Schwarz on Monday, May 30, 2005


Ajax.NET 5.5.30.3 (cookieless support)

There is a new version available at http://ajax.schwarz-interactive.de [1]. Feel free to download the version 5.5.30.3 with following fixes:

Posted by Michael Schwarz on Monday, May 30, 2005


Ajax.NET and Unit Testing of Web Applications

I am back from vacation and build a cool new library using Ajax.NET [1]. The new library (hm, I need a nice name) will allow the developer to build test scenarios that will work like NUnit, but will support web applications. Because I do not have time enough to build a lot of different web applications I am searching beta testers that are developing web applications. Please use the contact form or the feedback at this page (I need your email address to send you an example and the DLL).

Posted by Michael Schwarz on Tuesday, May 24, 2005


Ajax.NET bugfixes and new features

I fixed several bugs in the last week. Because of internal complete redesign some objects like DataSet returned wrong to the client-side Javascript. Also some NullReferenceExceptions have been fixed. The proxy files are cached, now.

Posted by Michael Schwarz on Friday, May 13, 2005


Ajax.NET and large arguments

On issue I never tested was the length of the request. Because browsers do not allow to use long URLs (I don't know the maximum lenght) you could get a script error on the client-side if the arguments send to the server are too long. I have fixed this in version 5.5.12.3 [1] that will be available for download.

Posted by Michael Schwarz on Wednesday, May 11, 2005


Ajax.NET supports System.Drawing.Bitmap as return value

Some developers asked me if it is possible to return a image? Yes, it is working now. Version 5.5.12.2 [1]is available online.

Posted by Michael Schwarz on Wednesday, May 11, 2005


Ajax.NET Library version 5.5.10.1

I fixed the ArrayList and custom class problem. The C# example has been changed to make a test method for arrays (ArrayList, StringCollection, []). There is also a test for a custom class. (Note: currently there is no support for classes that inherit from CollectionBase, I will have to check how to do this in JSON.)

Posted by Michael Schwarz on Tuesday, May 10, 2005


Ajax.NET - new version available (5.5.8.1)

Sorry for the delay on my current release, but the new version is available, now!!

Posted by Michael Schwarz on Monday, May 9, 2005


Delay on next Ajax.NET Release

Because I got more good ideas I didn't uploaded the next release, yet. I will do some more checking first, because I already implemented these nice cool features. On some Windows Mobile PCs the Ajax.NET wrapper is not working fine. Perhaps I will release the next version without full support for all Pocket PCs.

Posted by Michael Schwarz on Wednesday, May 4, 2005


A new webserver for Ajax.NET

Today my domains are moved to a new server, more space, more ram, more power...! A new release of the Ajax.NET wrapper will be uploaded tomorrow morning.

Posted by Michael Schwarz on Monday, May 2, 2005


Ajax.NET - static methods and AjaxRequireSessionState

The session state will be available only if you add the new Ajax.AjaxRequireSessionStateAttribute . The last release did add the session state for all methods. See the new examples at http://ajax.schwarz-interactive.de/ [1].

Posted by Michael Schwarz on Tuesday, April 26, 2005


Ajax.NET - Visual Basic .NET example online

Because a lot of developers are working with Visual Basic .NET I put the a new example online written in VB.NET. The example will be the same as the C# version. I will update both projects in the future to help VB.NET developers.

Posted by Michael Schwarz on Tuesday, April 26, 2005


Ajax.NET - new version available (SessionState support!!!)

There is a new version available of the free Ajax.NET Wrapper DLL. The main new features are:

Posted by Michael Schwarz on Monday, April 25, 2005


Ajax.NET and GotDotNet workspace

As I wrote in one of my last blog source code has been copied from the GotDotNet workspace and some files have been changed (removed Copyright,...). I have stopped the workspace because I am not sure how to handle this. Also there is a problem with the maximum member count on GotDotNet. There are still 22 pending users.

Posted by Michael Schwarz on Friday, April 22, 2005


Debug Internet Explorer Javascript

Only one tip that I didn't know before: When you want to debug Javascript code you can start your debugger (Visual Studio .NET or Script Debugger), search for the correct iexplore.exe process, attach it and go on debugging.

Posted by Michael Schwarz on Tuesday, April 19, 2005


Ajax.NET Open Source available

While getting more and more emails from developers asking for a open source project I will have a look around in the open source world to find a good license and place where to put the source code. First I have to talk to companies that are already using the ajax.dll in their projects what they think about this.

Posted by Michael Schwarz on Monday, April 18, 2005


Gmail and forbidden extensions

Some months ago I tried to send a ZIP file containing a EXE file which is forbidden to be sent on Gmail. Gmail is extracting the ZIP file and will not send the email until it is removed. Some users have renamed the ZIP file to something like dummy.dat. The receipient has to reanme it back...

Posted by Michael Schwarz on Saturday, April 16, 2005


Ajax.NET - new release with Usage Guide

A new version is available free for download at http://ajax.schwarz-interactive.de/download/ajax.zip [1] including a usage guide and a quick start.

Posted by Michael Schwarz on Thursday, April 14, 2005


Download Ajax.NET Wrapper usage guide

You can download a first usage guide for the Ajax.NET Wrapper DLL at http://ajax.schwarz-interactive.de/download/AjaxGuide.doc [1]. Thanks Karl for writing this useful documentation!!! A quick guid is available as text file at http://ajax.schwarz-interactive.de/download/quickGuide.txt [2].

Posted by Michael Schwarz on Thursday, April 14, 2005


Ajax.NET Wrapper with new features

I have added this night some features for the Ajax.NET Wrapper DLL:

Posted by Michael Schwarz on Wednesday, April 13, 2005


AJAX benefits

I get a lot of feedback by email and comments on my blog. Sorry, if I cannot answer all that fast.

Posted by Michael Schwarz on Tuesday, April 12, 2005


AJAX .NET Wrapper DLL Video

Because I do not have time to write a documentation I added a small video that will show you how to use the AJAX .NET Wrapper DLL. First I will show the old way using postbacks to the Server. Two textboxes (username and password) will be verified on the server. If the username is not michael and the password is wrong I will show a error message. Please note that every click on the Login button will start a postback (server round trip).

Posted by Michael Schwarz on Monday, April 11, 2005


AJAX .NET Wrapper DLL (coming soon: .NET Events and Delegates in Javascript)

The downloads of AJAX .NET Wrapper DLL is still growing! Thanks to all bloggers that have done there job to write about it.

Posted by Michael Schwarz on Monday, April 11, 2005


System.Data.DataSet/DataTable and System.DateTime using Ajax.NET Wrapper DLL

The feedback for my last Ajax.NET Wrapper DLL was very good. I got a lot of new ideas, thank you!!

Posted by Michael Schwarz on Friday, April 8, 2005


New version of AJAX Wrapper for .NET

A new version of the AJAX Wrapper DLL is available online for free at http://ajax.schwarz-interactive.de/download/ajax.zip [1]. For demonstration I have added a new sample (including source code of sample project) that will show how to use the AJAX Wrapper DLL in you projects:

Posted by Michael Schwarz on Thursday, April 7, 2005


Download C# Javascript Wrapper Sample

I have done a small sample on how to use the C# Javascript Wrapper in web applications to get new data without the need of a postback. Feel free to download the sample from http://schwarz-interactive.de/download/clientcallback.zip [1]. Unzip the file, create a virtual IIS folder and start the application. The methods used in the default.aspx can be found in default.aspx.cs. They are marked with an attribute (MS.Web.JavascriptMethod). Currently you can use bool, int, string and XmlDocument for the return value, more later.

Posted by Michael Schwarz on Thursday, March 3, 2005


ASP.NET 2.0 und CallbackEvents mit Javascript

Ein wenig enttäuscht bin ich schon, vielleicht liegt es aber auch nur an der aktuellen Beta 1 des Microsoft .NET Frameworks. Die CallbackEvents für Javascript, also das Holen von neuen Daten ohne PostBack ist noch viel zu umständlich, und dazu auch noch nicht mächtig genug. Nachfolgend ein kurzes Beispiel für alle, die das neue Feature noch nicht ausprobiert haben:

Posted by Michael Schwarz on Thursday, March 3, 2005


Microsoft AnitSpyware bug

If have installed the Microsoft AntiSpyware since some weeks. Some applications like DameWare or VNC are marked as spyware, ok, that's ok. But I have big problems while working with scripts (.js and .vbs). Sometimes I want to edit script files with notepad.exe instead of using Visual Studio .NET (it is a little difference when waiting for Visual Studio .NET for a 1 kB file...).

Posted by Michael Schwarz on Friday, February 25, 2005


Update: Using a HttpHandler and Attributes to call C# methods in Javascript

Because many asked me to show a online demo of the C# to Javascript wrapper I put a Javascript chat on http://beta.schwarz-interactive.de/ [1]. You can use Mozilla Firefox or Internet Explorer to try the demo. Check the HTML source code of the page to see how the demo is working. The source code of the C# code can be found here: http://beta.schwarz-interactive.de/class1.txt [2].

Posted by Michael Schwarz on Thursday, February 17, 2005


Using a HttpHandler and Attributes to call C# methods in Javascript

Now, I am back and done a new sample on how to call C# (or simply .NET methods) from the client using Javascript. As you can see on my last posts I had done this using a IFRAME or the XmlHttpRequest object (yes, this is working in FireFox and Mozilla like it is working in Internet Explorer). But the main thing I had to do was to build small wrapper Javascript code, everytime the same way.

Posted by Michael Schwarz on Tuesday, February 15, 2005


Using javascript arrays and IFRAME or Frames

I had a look at the http://gmail.com [1] technique for reading data from the client without refreshing the page. I am using this for a long time with the ActiveX Microsoft.XMLHTTP or Microsoft.XMLDOM. But using frames and simple arrays pages are working in Internet Explorer, Firefox, Mozilla,... very cool! A simple page can be viewed at http://demo.pctopp.com/incidents.aspx [2]. If you click on a group (there a machine codes for conversion machines) you can see all the incidents for this group. In the background a page is loaded into a frame: http://demo.pctopp.com/incidents.aspx?cmd=showincidents&groupid=1 [3] If you have a look to the source code you can see on how the new values are put to the parent (main) page.

Posted by Michael Schwarz on Thursday, January 27, 2005


Windows Update v6 started

Did not know if there is already a post about the beta for Windows Update v6. I got an email for beta tester, but I think the link is working for all Windows 2003 Servers, http://beta.update.microsoft.com [1]. If you open the link using Windows XP/2000/... you will be redirected to version 4 or 5. Note: the new update webpage is still in beta!!

Posted by Michael Schwarz on Thursday, January 27, 2005