February 2007 - Posts

VSone: .NET 3.0 German Book Launch

at the VSone conference in Munich Germany, Addison Wesley presented the first German book about .NET 3.0. All three authors where attending VSone as speakers.

Picture:Authors Simon Steckermeier, Jürgen K(l)otz, Rouven (Ötzgür) Haban and Sylvia Hasselbach from Addison

Posted by preishuber | 1 comment(s)

looking for httpredirect in iis7?

also the IIS7 documentation sucks

http://msdn2.microsoft.com/en-gb/library/aa965182.aspx

Usage:

 <httpRedirect enabled="true"
        exactDestination="false"
      httpResponseStatus="Temporary">
      <add wildcard="*.asp"
destination="aspx.aspx" />
    </httpRedirect>

call test.asp -> will show: aspx.aspx/test.asp

possibel values for httpResponseStatus are : Temporary, Found, Permanent.

Posted by preishuber | 1 comment(s)
Filed under:

VSone Munich is coming

I am presenting three sessions on VSone (Feb 13.-14. Munich, Germany). There is also a exhibition which can be visited for free!

[Update]

i also make a full day AJAX workshop in the post conference at feb 15th. Seats available!

Posted by preishuber | with no comments
Filed under: , ,

codefree popup Master Detail with AJAX

The top most issue in web applications is to present a huge amount of data. For my sample  I had to display the schedule of .net development courses. A classic master detail scenario. If you place that on a webform the complete place is not used. A popup will solve that. The goal is to solve that without JScript only using AJAX features. After investigating I figured out three possibility's

  • HoverExtender
  • HoverMenuExtender static
  • HoverMenuExtender with callback for each row

I have solved it in all three ways and the hovermenuextener static is the best. The solution is without code.

1.) create a repeater ( or whatever)

2.) the Table row must have a server attribute and a ID (reihe)

3.) place a panel in a cell of that row

4.) put a hidden field in it to use it as control source for the detail grid

5.) put a repeater and sqldatasource into the panel with a controlparamter pointing to the hidden field

6.) extend the table row with a hovermenuextender which is placed otside the row of the Master grid but inside the itemtemplate

 

<ItemTemplate>

<tr runat="server" id="reihe">

<td ><a href=<%#eval("url") %>><%#eval("title") %></a></td>

<td align=right><%#Replace(Eval("dauer"), "Tage", "")%></td>

<td align=right><%#Eval("preis", "{0:c}")%></td>

<td></td>

<td>

<asp:Panel ID="pnlTermine" runat="server" Width="250px"

CssClass="popupPanel" GroupingText="Termine">

<asp:HiddenField ID="HiddenField1" runat="server" Value=<%#eval("seid") %> />

<asp:Repeater ID="rptDetails" EnableViewState=false runat=server DataSourceID="DSKursTermine">

<ItemTemplate>

<b><%# switch(eval("ort")) %></b>

<%#eval("termin","{0:dd}") %>.<%#eval("termin","{0:MMM}") %>

</ItemTemplate>

</asp:Repeater>

   ....

<ajaxToolkit:HoverMenuExtender runat=server ID="popup1"

PopupControlID="pnlTermine" TargetControlID="reihe"

PopupPosition=Right OffsetX=-100 HoverCssClass="popupHover"

PopDelay=25

>

</ajaxToolkit:HoverMenuExtender>

</ItemTemplate>

.... 

Posted by preishuber | 3 comment(s)
Filed under:

Nikhil's homework: 3 AJAX controls

UpdateHistory

StyledUpdatePanel

AnimatedUpdatePanel

http://www.nikhilk.net/UpdateControls.aspx

Posted by preishuber | with no comments
Filed under:

Ajax Control Toolkit: yet another new build

surprise, surprise new bits available. From buildnumber 10123 to 10201 in only 9 days. Thats a product live cycle! By the way Microsoft: buildnumbers are small integers and end with 65535. So you have left ~6400 days of development. The .net framework team have less possibilitys. They stopped at 50727.

Posted by preishuber | with no comments
Filed under:

Date serialization changed (AJAX v1.0)

in the ASP.NET AJAX Extensions 1.0 (RTW) the JSON format have changed for serialization of date datatype.

\/Date(123)\/

prior it was

@1211212@

Both uses a count starting from Jan 1st 1970

If you have build your own method based on jscript eval your application will fail. The recommended way is to use Sys.Serialization.JavaScriptSerializer.deserialize

which encapsulate a regex replacement.

Posted by preishuber | with no comments
Filed under:

the missing AJAX Feature: documentation (now available!)

AJAX is the first developer "product" or "technology" where no specs are in the MSDN documentation. Documentation is a essential software feature like security.

ASP.NET AJAX extensions

there is only partial documentation online available. The best you can do are the walkthorughs. Since today the download of the web site as package is available. ( I have looked for it on Friday). Microsoft released last week the source code which is no common way to learn. Also the webcasts are not a efficent way to solve a development problems. All that is still not enough!

ASP.NET Toolkit

Usercontrols have been the success factor for the VB story. Also the AJAX controls should be under full control of a vendor: reliable, documented and must have a roadmap. Microsoft please take over full control! The documentation are samples which can be downloaded. I would pay for it!

ASP.NET futures

Nice idea to have a view on the upcoming things. But e.g. Autocompleteextender, which is essential, have moved from futures to toolkit without the needed documentation or migration path. At the moment I can find NOTHING about XML Script. All my samples from dec ctp breaks. Only info that im found are 3 sample projects.

 

CTP (community drops) issue

Microsoft ships a lot of public builds of AJAX. This strategy ends up in a lot of public and free documents which are outdated (majority). If you use google and find a sample, you have no guarantee that this working or which build is used. This costs development time. Yes i know cheat sheets, but should be job of microsoft to hand out that info.

In my opinion for professional productivity of ASP.NET AJAX development we need at least following:

  • better documentation
  • intellisense
  • less CTP's
  • roadmap (18 month)
Posted by preishuber | 5 comment(s)
Filed under:
More Posts