Contact
 

 Wednesday, January 11, 2006
Another new version of the HierarGrid and DCP for ASP.NET 2.0

I just published another new version 2.1 of the HierarGrid and the DynamicControlsPlaceholder that fixes another problem with ASP.NET 2.0. Please find the detailed changelog on the respective pages. As before, both components are compiled against .NET 1.0 but tested with 1.1 and 2.0.

V2.1.0.0 (published 2006-01-11)

  • Bugfix: UserControls could not be reloaded when the application is configured as a website (as opposed to virt.dir.) (thanks to Keith Culpepper)
  • Bugfix: fixed regression if ShowHeader=false and AllowPaging=false, colspan is wrong (thanks to Stuart Hilbert)

Download here

DynamicCtrlPlh | HierarGrid
1/11/2006 11:14:28 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [30] 


 Monday, December 19, 2005
New HierarGrid and DynamicControlsPlaceholder versions for ASP.NET 2.0

I just posted a new version 2.0 of both the HierarGrid and the DynamicControlsPlaceholder that works with ASP.NET 2.0. As many of you pointed out, the old versions worked with ASP.NET Beta2 but failed under the final version.

If you run into an error message "The file '/.../<WrongFilename>.ascx' does not exist." in any of the two components please download the newest version and try it again.

Sorry for the late response to this problem but I've been on vacation (South Africa, FWIW) the last 4 weeks. :)

Download here

DynamicCtrlPlh | HierarGrid
12/19/2005 9:28:19 AM (W. Europe Standard Time, UTC+01:00)  #  Comments [19] 


 Thursday, October 27, 2005
Reflector.FileDisassembler now creates project files

Thanks to the contribution of a nice community member, Reflector.FileDisassembler now supports generating Visual Studio 2003 project files for decompiled assemblies. This is of course only a 90% solution as not all project level settings can be recreated from an assembly.

Furthermore, the same guy sent me some code that restores the XML documentation for an assembly. Given you have the xml file that was generated by the compiler, put it into the same directory. Let FileDisassembler recreate the files and the XML comments are injected into the corresponding methods.

You can download the newest version here either as a stand-along assembly which you drop into the Reflector directory or the full source code:

http://www.denisbauer.com/NETTools/FileDisassembler.aspxFileDisassembler
10/27/2005 7:39:32 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [19] 


 Wednesday, September 28, 2005
Troubleshooting HierarGrid plus/minus icon problems

The most frequent problem regarding the HierarGrid seems to be that the plus/minus icons are not appearing on the page. The reason usually is simple: The DataRelation is not properly set up. If we take a look at the HierarGrid.cs source code you'll notice the following lines:

//if no child rows exist, hide the plus-minus icon
if(panel == null)
    item.Cells[_hierarColumnID].FindControl("Icon").Visible = false;

When is panel == null?

foreach(DataRelation dataRelation in dataRelations)
{
    TemplateDataModes templateDataMode;
...
    if(templateDataMode != TemplateDataModes.None)
    {
        DataRow[] dataRows = drv.Row.GetChildRows(dataRelation);

        if(dataRows.Length != 0)
        {
            //create the panel that contains all the child templates
            if(panel == null)
            {
                panel = new Panel();
...

So, as long as drv.Row.GetChildRows(dataRelation) returns more than one row, the plus/minus icon should be visible.

How can you check your DataRelation?
To show it at the HierarGridDemo take a look at the following block that creates the DataRelation and can be found in Page_Load:

//Relation Title => Sales
dc1 = ds.Tables[0].Columns["title_id"];
dc2 = ds.Tables[2].Columns["title_id"];
dr = new DataRelation("Title_Sales", dc1, dc2, false);
ds.Relations.Add(dr);

Now you can add the line

DataRow[] drs = ds.Tables[0].Rows[0].GetChildRows("Title_Sales");

and see if it returns any rows.

Another option is adding a breakpoint to the TemplateSelection event. This should be called at least once for each DataRelation that has child rows.

HierarGrid
9/28/2005 8:45:43 AM (W. Europe Standard Time, UTC+01:00)  #  Comments [7] 


 Tuesday, September 27, 2005
HierarGrid and StackOverflow exceptions

If you are running into a StackOverflowException when working with nested grids, you'll need to check the code-behind of the child grid.

Make sure that the databinding code for the DataGrid is located in the Page.DataBind event and not in Page.Load or ChildGrid.DataBind.

In the HierarGrid demo on my homepage this can be seen in the TitleList.ascx.cs/.vb.

C#:
private void InitializeComponent()
{
   ...
   this.DataBinding += new System.EventHandler(this.TitleList_DataBinding);
   //not this.HG1.DataBinding or this.Load
}

private void TitleList_DataBinding(object sender, System.EventArgs e)
{
    DataGridItem dgi = (DataGridItem) this.BindingContainer;
    if(!(dgi.DataItem is DataSet))
        throw new ArgumentException("Please change...");
    DataSet ds = (DataSet) dgi.DataItem;
    HG1.DataSource = ds;
    HG1.DataMember = "Titles";
    HG1.DataBind();

}

VB:
Private Sub TitleList_DataBind(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.DataBinding

If you notice any other reason for a StackOverflow exception, please let me know.

HierarGrid
9/27/2005 8:47:42 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [5] 


Installing TFS Beta3 and WSS

If you are trying to install TFS Beta3, make sure that you configured WSS in server farm mode (during GUI setup). If you don't do that, because you don't RTFM (as I often do), you might get the error message:

"Windows SharePoint Services is not configured as recommended by Team Foundation Server

Windows SharePoint Services configuration does not meet Team Foundation Setup recommendation."

Alternatively, WSS installation can be started silently with:
C:\>DownloadDirectory\STSV2.EXE /C:"setupsts.exe /remoteSql=yes /provision=no /q"
where DownloadDirectory is the path to the location on your hard drive where you saved the downloaded file.

VS.NET
9/27/2005 6:36:11 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [2] 


 Wednesday, August 24, 2005
Defining the Columns in the HierarGrid

Quite regularly I get the question how to hide a specific column in the HierarGrid or how to specify the width of it. The answer is fairly easy: Exactly the same way as with the regular ASP.NET DataGrid.

Turn off AutoGenerateColumns and specify it declaratively:

<dbwc:HierarGrid....>
   <Columns>
      <BoundColumn... >
         <HeaderStyle... />
      </BoundColumn>
   </Columns
</dbwc:HierarGrid>

You can also explicitely define the HierarColumn (which is autogenerated if you don't do so) in the same way:

<dbwc:HierarColumn />

Let me know if you run into any problems with that.

HierarGrid
8/24/2005 6:20:14 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [9] 


 Friday, July 22, 2005
No load-on-demand in HierarGrid

One of the question I get frequently about the HierarGrid is, wether it is possible to load the child data in a delayed manner. Usually, the scenario that people have is that the grid contains too many rows to be rendered and transferred in a timely manner.

However, the basic design principle of the HierarGrid is that all data is rendered to the client at once and expanding/collapsing is done completely on the client side without the need for postbacks.

If the structure is more complicated than it could be rendered at once, the HierarGrid might not be the best choice for the scenario. The only other options to work around this are limiting the data that needs to be rendered per page like e.g. paging, filtering etc.

I received some emails from other people who thought about enhancing the HierarGrid with a delay-loading mechanism (maybe in an AJAX style to pick up that trendy term) but I don't have a complete implementation yet and currently I don't have the time to implement it myself.

One further point: When checking the performance of the page in IE make sure you don't have a debugger attached (for script debugging) because that slows it down dramatically.

HierarGrid
7/22/2005 4:58:20 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [3] 


 Monday, April 18, 2005
Visual Studio 2005 Beta2 and SQL Server 2005 April CTP: Install order and version info

With the download availability of Visual Studio 2005 Beta2 and SQL Server 2005 April CTP on MSDN subscriber downloads it's about time to update my post on compatibility of the different builds.

Once again let's take a look at the version of the CLR that comes with each product:
VS.NET 2005 Beta2: 50215.44
SQL Server 2005 April CTP (aka IDW14, 9.00.1116.08): 50215.44

So there should be no problem installing both sidy-by-side and even the install order shouldn't matter this time. I've tried it out on my laptop (Yukon first then VSTS) and indeed everything worked out just fine. Please note that you'll need SP2 on WinXP or SP1 on WS2003 and Office 2003 SP1 (if you want to use VSTO).

Another note: When talking to a MS person they refer to Beta2 as 50215.45 because that is the correct version number. Why is that? 50215.45 = 50215.44 + updated SQL Express. So with regards to the binaries there is no difference between .44 and .45. You'll notice that all System.* assemblies are labeled .44.

Now you might ask which version of Avalon and Indigo is compatible with Beta2? And until now the answer is "None". As I described in the previous post the March CTPs required PD7 builds of the CLR to run. So basically if you want to use Avalon or Indigo stick with PD7 or wait for a new, upcoming CTP build of Avalon+Indigo.

.NET Framework
4/18/2005 9:19:02 AM (W. Europe Standard Time, UTC+01:00)  #  Comments [1] 


 Wednesday, March 23, 2005
Updated EditableHierarGrid demo

I've uploaded a new updated version of the EditableHierarGridDemo that shows how to edit rows in the parent grid, the child grid and furthermore how paging and sorting in the child grid works.

A basic principle for this to work is that the child saves its DataSource to the session (or somewhere else) as you can see in the DataBinding event of the child template. Please note that this DataSet is not identical to the DataSet of the parent grid but is a clone that contains only the subset of data that is relevant for the child.

Example:
Authors=>Titles - The main dataset contains five authors and each author has 3 titles. When the HierarGrid is rendered for each author one title template is created. When this child template is called, the DataSet only contains the three titles of the current author (and not all titles and not any authors). In my sample this DataSet is persisted in the Session so that after postbacks in the child grid occur, only the specific grid can be rebound.

To further clarify that, set a breakpoint into the DataBinding event of the child template and open a quickwatch on the DataSet. You'll notice that only ths correct subset of the data is contained.

Download the demo here: http://www.denisbauer.com/ASPNETControls/HierarGrid.aspx

HierarGrid
3/23/2005 11:22:51 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [1] 


 Friday, March 18, 2005
Programming with Media Center's DVR-MS

Excellent article by Stephen Toub about how to develop managed applications in C# that can work with Windows Media Centers DVR-MS file format.

"...I delve into working with DirectShow and DVR-MS files (the recorded television files generated by Windows Media Center) from managed code, and I demonstrate how to do things like work with DirectShow filter graphs, play DVR-MS files in your own applications, convert DVR-MS files to other file formats, edit and splice DVR-MS files, extract and change metadata, etc."

MCE
3/18/2005 9:07:36 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Monday, March 14, 2005
NASA World Winds: A view from above

A friend of mine who is an enthusiast of astronomy showed my this cool application: NASA World Winds 1.3.

Installing the app quickly revealed that it is based on .NET, namely written in C# with Managed DirectX as a graphics library. Even better, the source code is available on sourceforge.

The lead developer justifies his decision in a nice plea for .NET.

.NET Framework
3/14/2005 8:54:53 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Tuesday, February 08, 2005
Differences between System.Web.UI.LiteralControl and System.Web.UI.WebControls.Literal

Mike Ogden pointed out the fact that the DynamicControlsPlaceholder (DCP) does not correctly recreate System.Web.UI.LiteralControl. At first I was very perplexed because I was somehow sure that I successfully tried that before. However, I must have mixed it up with the System.Web.UI.WebControls.Literal which works without problems.

That raises the question why there are two different controls and how they differ. The major difference is that the LiteralControl does not persist the Text property in ViewState, which is why it is recreated emptily by the DCP. The Literal, however, takes a LiteralControl as a child and saves its Text in ViewState:

protected override void AddParsedSubObject(object obj)
{
    if (!(obj is LiteralControl))
    {
	throw new HttpException(
	    HttpRuntime.FormatResourceString("Cannot_Have_Children_Of_Type", 
	    "Literal", obj.GetType().Name.ToString()));
    }
    this.Text = ((LiteralControl) obj).Text;
}

So, if you want to use literal controls with the DynamicControlsPlaceholder make sure that you use Literal instead of LiteralControl.

ASP.NET | DynamicCtrlPlh
2/8/2005 8:40:45 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [1] 


Using unmanaged C++ Class Libraries from C#

If you are not very familiar with writing a managed C++ wrapper around an unmanaged C++ class library as I had to do last week, the following tutorial is of great help: http://www.codeguru.com/Cpp/Cpp/cpp_managed/interop/article.php/c6867/

The sample shows how to instantiate classes from C# and make callbacks from unmanaged to managed code with delegates.

One of the next things I needed was the conversion between STL strings std:string and System::String which is described here.

.NET Framework
2/8/2005 8:21:42 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [2] 


 Wednesday, January 12, 2005
Needed permissions for the ASP.NET worker process user

Twice during the last 7 days, I had to look up the privileges, a custom user account needs when you want to run the ASP.NET worker process under. How to fix the ugly 80004005 error message is described here:

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/secmod/html/secmod15.asp

http://support.microsoft.com/kb/317012/EN-US/

ASP.NET
1/12/2005 9:25:02 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


Customizing Quickwatch in VS.NET debugger for custom classes

Today I was asked how to customize the quickwatch that the Visual Studio debugger displays for custom types. For an integer, a string, a DateTime or most other System types their values are correctly displayed. However for all custom types it just displays {MyNamespace.MyClass}.

My first guess was that the debugger just displays the output of the ToString() method however that is not true. After some searching on the web I found a newsgroup post that points out to edit the file mcee_cs.dat in the C:\Program Files\Microsoft Visual Studio .NET 2003\Common7\Packages\Debugger directory.

Their entries are structured like that: <Typename with Namespace>=<member to display> (but that is described in the file as well). So I made a test with my PictureGalleryImage class "<DBauer.Web.UI.WebControls.PictureGallery.PictureGalleryImage>=<Index>" and it worked really find. Not very intuitive but good to know.

After I found it out I googled again and then I found the blog post by Dan Vallejo that describes the same just with other keywords :)

VS.NET
1/12/2005 6:10:20 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Tuesday, January 11, 2005
Guerilla Yukon training in Redmond and the new Reflector.SQL2005Browser addin

The week before Christmas I attended DevelopMentor's "Guerilla SQL Server 2005 for Developers" training on the Microsoft Campus in Redmond. This was my first trip to Redmond after having joined the company 3 years ago and it was really nice to see "the temple". *g

Regarding the training: The trainers Bob Beauchemin, Niels Berglund and Dan Sullivan did an excellent job in transferring their knowledge about Yukon to the 60 attendees. What was really cool about the training being on MS campus was that many PMs from the different SQL groups came to the conference center and offered Q&As and feedback sessions.

During the training we talked about ways to browse through the assemblies stored in a SQL database and retrieve them with SELECT statements. This inspired me to create a Reflector addin that connects to a SQL instance, lists the databases and the assemblies contained. By clicking the "Load assemblies" button you can open them in .NET Reflector without the need to first connect to the SQL Server manually, dump the assembly, copy the file to the dev machine, etc...

You can download the SQL2005 Browser tool here. Let me know, if you find it useful or have ideas how to improve it.

SQL2005Browser
1/11/2005 4:35:24 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Sunday, December 12, 2004
HierarGrid not working in MAC IE

I got an email from Steve Miller who tries to use the HierarGrid on his MAC in the newest version of Internet Explorer. Unfortunately, he mentions some problems:

  1. It seems like IE has problems with the standard ASP.NET Image tag rendering to <img ... /> instead of <img ...></img> which seems to work.
  2. The other problem is when clicking on the "+" icon, the detail row is not displayed directly below the master row. Instead it is appended to the end of the grid.

As I don't have a MAC myself I was wondering if somebody has ever tried it and can comment on these problems? TIA

HierarGrid
12/12/2004 7:37:40 AM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Monday, December 06, 2004
Why does the DataItem of my HierarGrid contain a DataSet instead of a DataRowView (or vice versa)?

This is still the most frequently asked question that I get via email. The answer is: TemplateDataMode.
Please make sure you set this property to the value that corresponds to your scenario.

In the current version there are two possibilities:

  • SingleRow: For each row in a table a child template is displayed. Therefore in the Databind event of the child control the DataItem contains a DataRowView - the DataRow that corresponds to the current row in the table
  • Table: For each table a child template is displayed like in a nested grid scenario. Therefore in the Databind event of the child control the DataItem contains a DataSet with all child rows that have a relationship to the current parent row.

In one of the next version I'll add a third option to specify the value at runtime. This may be helpful for mixed scenarios where you want to display nested grids for one table and single row templates for another.

Update: Another reason why you might get an InvalidCastException is when you set TemplateDataMode to Table and try to bind the child dataset in the Page_Load event. Please change that to the DataBind event as shown in the NestedHierarGrid demo on my website.

HierarGrid
12/6/2004 9:02:59 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Saturday, December 04, 2004
Releases, releases, releases: WSE 2.0 SP2, MSN Messenger 7.0, MSN Spaces and SQL Server 2005/Yukon CTP December

There were a couple of interesting releases last week:

WSE 2.0 SP2:
The update can be downloaded here: http://msdn.microsoft.com/webservices/building/wse/default.aspx
The new Hands-on-labs now also include a VB.NET version.

MSN Spaces:
http://spaces.msn.com
MSN® Spaces is more than an ordinary personal Web site; it’s an easy-to-use service that is more like a dynamic online scrapbook, giving people a place to create and update a Web log, or blog, and share their photos, music playlists and more, all while better connecting them with friends, family or the online world.

MSN Messenger 7.0 Beta:
http://messenger.msn.com/Beta/Default.aspx
Integrates with MSN Spaces to show contact's recent blogs.

SQL Server 2005/Yukon CTP December:
Available for MSDN subscribers and Beta testers via Betaplace. You can use the old Whidbey version from MSDN and just reinstall the .NET Framework that comes with the new build.

Windows
12/4/2004 6:15:48 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Thursday, November 25, 2004
Consuming Webservices over HTTPS (SSL)

Today, I tried to implement SSL-based transport security for the webservices calls between our smart client running on NT4 and the server. Additionally, the client was supposed to include a user certificate in each call.

For the server configuration, IIS help provided a pretty good step-by-step tutorial which made it really easy.

The client certificate can be included with the following code (from MSDN):

// Load the client certificate from a file.
X509Certificate x509 = X509Certificate.CreateFromCertFile(@"c:\user.cer");
// Add the client certificate to the ClientCertificates property of the proxy class.
bank.ClientCertificates.Add(x509);

A blog post by Jan Tielens described the steps necessary to change the client code so that it accepts the servers SSL certificate.

Finally, I wanted to take the client certificate from Windows Certificate store instead of the file system and noticed that currently (.NET FX 1.1) there is no managed implementation for this scenario. A webpage by Michael Gallant explained two possibilities for that: one using the unmanaged CAPICOM dll and the second by P/Invoking the CryptoAPI. I decided for the second due to lower deployment hassle and it worked without problems.

To enumerate all certificates in the stores you can use the function CertEnumCertificatesInStore.

.NET Framework
11/25/2004 8:54:33 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


Smartphone on sale in Germany

Finally, T-Mobile decided to offer a Windows Mobile-based Smartphone called SDA at a reasonable price here in Germany. Hopefully, more people can now enjoy the benefit of being able to sync their mails, contacts and appointments easily with their "handy".

http://www.t-mobile.de/shop/handy/1,4855,2963-_3127-0-1-0,00.html

Windows
11/25/2004 7:52:25 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


Back from Vacation

I am back from a wonderful trip to Australia and already heads down in a new project with the main focus on smart client, webservices, WSE 2.0 etc.

First thing I noticed when I got back was that I couldn't dial in to Microsoft Corpnet with my laptop. The hotline told me that my computer account was deleted after such a long inactivity. Seems to be really bizar for an American company that an employee is away for 5 weeks without having left the company or being on sabbatical. :)

General
11/25/2004 7:40:18 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [1] 


 Monday, October 18, 2004
Vacation

I am out on vacation for nice 5 weeks to Australia :)

So no HierarGrid and ASP.NET support for the next month. I am sure the geeks on www.asp.net/forums will jump in...

General
10/18/2004 4:42:57 AM (W. Europe Standard Time, UTC+01:00)  #  Comments [3] 


 Friday, October 15, 2004
Edit&Continue in C#

Soma announces:

"One of the top feedback requests from our customers is support for Edit & Continue (E&C) in C# in Visual Studio 2005.  I am excited to announce that the C# team took your feedback to heart and has added support for E&C in Visual Studio 2005."

 

.NET Framework
10/15/2004 6:30:29 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Monday, October 11, 2004
Biztalk-related blog posts

Alan Smith created a cool compilation of Biztalk-related blog posts as a CHM file:

http://www.gotdotnet.com/workspaces/releases/viewuploads.aspx?id=0dfb4f4e-d241-4bc8-8418-2c385d8e3e

Server Products
10/11/2004 12:56:16 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Wednesday, October 06, 2004
Reported Vulnerability in ASP.NET

Please take a close look at the info page about a reported security issue with ASP.NET:

http://www.microsoft.com/security/incident/aspnet.mspx

Brian Goldfarb also started a new thread about it on the ASP.NET Forums:

http://www.asp.net/Forums/ShowPost.aspx?tabindex=1&PostID=711220

ASP.NET
10/6/2004 11:04:42 AM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Friday, August 20, 2004
 Tuesday, August 17, 2004
Updated FileDisassembler for Reflector 4.1.0.0

The update can be found here.

FileDisassembler
8/17/2004 12:53:49 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Wednesday, August 11, 2004
MSN Web Messenger Beta

In case you haven't seen it yourself there is now a web version of MSN Messenger on http://webmessenger.msn.com/.

This is excellent news for people like me who are often behind firewalls at customer sites and cannot connect directly to the Messenger service.

Software
8/11/2004 2:26:43 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Tuesday, August 10, 2004
New FileDisassembler 4.0.18.0

The new Reflector.FileDisassembler 4.0.18.0 contains the following changes:

  • Feature: AssemblyResolver dialog appears only once per assembly
  • Bugfix: Progressbar corrected

Download here

FileDisassembler
8/10/2004 4:19:25 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Monday, August 09, 2004
New HierarGrid version 1.7

The new release 1.7 of the HierarGrid contains the following changes:

  • Feature: TemplateDataMode.RunTime makes it possible to choose between SingleRow and Table for each relation at runtime (thanks to Tom Schmidt)
  • Feature: child templates are displayed for rows in selected state (thanks to Patrick Martin)
  • Bugfix: state of Checkboxes in child templates is now correctly preserved (thanks to Paolo Falabella)
  • Bugfix: corrected Mozilla DHTML incompatibilities (thanks to David Tétreault)

Download here.

HierarGrid
8/9/2004 12:45:40 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Monday, July 26, 2004
SQL Server 2005 (Yukon) Beta 2 released

Today SQL Server 2005 has been released to the MSDN subscriber downloads. If you try to install it on a machine that has Whidbey Beta 1 already installed you'll get a asking you to deinstall the .NET Framework. This is because Yukon ships with a slightly newer Framework build (40607.42) than the original Beta 1 of Whidbey (40607.16).

Just go to Add/Remove Programs and deinstall the .NET Framework - no need to deinstall Visual Studio 2005 itself. After that, you should be able to install Yukon which copies the newer version of the Framework to the disk.

Ready is your side-by-side install of Whidbey Beta1 and Yukon Beta2!

.NET Framework
7/26/2004 6:47:46 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Friday, July 09, 2004
Feedback and question mails vs. SPAM

If you send me an email and wonder why I never get back to you, maybe it has been stuck in my SPAM filter. My mail software blocks and sends me a list of all potential SPAM and virus mails and I just skim the subjects. So please make sure you DON'T use a trivial subject like "question" or "hi" and rather include "HierarGrid", "ASP.NET" or whatever might catch my attention.

DynamicCtrlPlh | HierarGrid | Version Switcher
7/9/2004 3:58:30 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Wednesday, July 07, 2004
ASP.NET Version Switcher on MSDN Magazine

James Avery was kind enough to include my ASP.NET Version Switcher in his list of the "Ten Must-Have Tools Every Developer Should Download Now" that is published in the current edition of MSDN Magazine July 2004.

Yesterday, I've checked the current version with the Beta1 of Visual Web Developer Express and it worked. Please note that it does seem to have problems running from a network share but once locally installed everything was fine. Let me know if you have difficulties.

Version Switcher
7/7/2004 8:25:00 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [1] 


 Monday, July 05, 2004
A day in the life of a Microsoft security patch

Interesting article I stumbled over while reading an internal DL about the work of the Microsoft Security Response Center (MSRC).

Windows
7/5/2004 6:47:23 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Tuesday, June 29, 2004
Visual Studio 2005 Beta 1 has shipped

Today at Teched Europe 2004, Visual Studio 2005 Beta 1 (formerly code-named Whidbey) is announced. On the new Developer Center site you can download two sets of products:

  • The full Visual Studio 2005 Beta, available to MSDN Subscribers initially; and by order for non-subscribers for a small fee in the near future.
  • The Visual Studio 2005 Express Beta Products, available for free public download. "The Express products are lightweight, easy to use, easy to learn tools for hobbyists, enthusiasts, and students who want to build dynamic Windows applications and Web sites."

The other interesting site when developing with Whidbey is the MSDN Product Feedback Center, where you can submit Feature Requests and Bugs directly to the product teams, get notified of fixes, rate on the importance etc.

The MSDN documentation is available here.

.NET Framework
6/29/2004 11:16:01 AM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


FileDisassembler versioning and Reflector 4.0.9.0

The new reflector build 4.0.9.0 is available vie Help|Check for updates.

As I am receiving many emails asking "Where is FileDisassembler for Reflector version X.X.X.X?" I wanted to point out, that not for each new Reflector build there needs to be a new FileDisassembler build.

Lutz changes the assembly version number only when breaking changes affect add-in writers. Therefore, a FileDisassembler build should work with a couple of different Reflector builds. Whenever he includes breaking changes, I am notified before and try to get a new version of FileDisassembler out simultaneously.

So please ask me only for new version, if you get the error message: "The following add-in(s) failed to load. Please check if you have the correct version installed."

FileDisassembler
6/29/2004 10:27:21 AM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Thursday, June 24, 2004
Excellent MSDN article on ASP.NET Viewstate

Scott Mitchell wrote an excellent MSDN article on the inner workings of the ASP.NET ViewState. That's cool because now I can answer half of the emails I receive about my DynamicControlsPlaceholder and dynamic controls samples by sending them the link to this article :)

It consolidates much of the information that is contained in numerous ASP.NET forum posts and extends Paul Wilson's ASPAlliance article.

Good job, Scott!

ASP.NET
6/24/2004 5:43:31 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Sunday, June 20, 2004
Updated FileDisassembler for Reflector 4.0.6.0

The update can be found here.

FileDisassembler
6/20/2004 10:53:21 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Thursday, June 17, 2004
Cryptographic failure when recompiling the HierarGrid, DCP, FileDisassembler etc.

I've been asked twice in the last 24h about the following error when trying to create your own build of the HierarGrid or any other of my components:

error CS1548: Cryptographic failure while signing assembly 'DBauer.Web.UI.WebControls.HierarGrid.dll'
-- 'Error reading key file '..\..\..\DBauer.Web.UI.WebControls.snk' -- The system cannot find the file specified. '

This happens because all builds that I compile are strong named and signed with my private key. The reference to my private key is located in the AssemblyInfo.cs file. Therefore, if you want to recompile the HierarGrid please either remove the reference to my keyfile in the AssemblyInfo.cs or create your own private key and use it to sign the assembly.

Further information on creating a key and strong named assemblies can be found here:

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconStrong-NamedAssemblies.asp

FileDisassembler | DynamicCtrlPlh | HierarGrid
6/17/2004 10:12:05 AM (W. Europe Standard Time, UTC+01:00)  #  Comments [3] 


 Tuesday, June 01, 2004
New FileDisassembler page

Reflector.FileDisassembler now has its own page and of course RSS Category Feed.

FileDisassembler
6/1/2004 1:36:15 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Sunday, May 30, 2004
New HierarGrid version 1.6

The new minor release 1.6 of the HierarGrid contains the following changes:

  • Bugfix: corrected problem with non-unique IDs that were generated for "ChildTemplate" panel in a DataMode=Table HierarGrid
  • Bugfix: child templates were inserted into first column when PagerStyle was set to "Top"
  • Bugfix: resetting the DataItem after inserting the child templates for further custom processing
  • Bugfix: copying selected state for <select> tags

Download here.

With the first bugfix, the FindControl call to access a child template changes to Control c=HierarGrid1.Items[i].Cells[1].FindControl("DCP").FindControl("Panel").FindControl("Panel_[PanelId]").FindControl("ChildTemplate_[PanelId]").FindControl("[InnerControlId]");

HierarGrid
5/30/2004 9:00:33 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Wednesday, May 26, 2004
Demos of Visual Studio 2005 Team System

There are a couple of interesting demo videos of some parts of Visual Studio 2005 Team System (code-named Burton)

http://www.activewin.com/awin/comments.asp?HeadlineIndex=24465

.NET Framework
5/26/2004 10:23:18 AM (W. Europe Standard Time, UTC+01:00)  #  Comments [1] 


 Saturday, May 22, 2004
New FileDisassembler version for Reflector 4.0.3.0

The new version of FileDisassembler, an add-in for Lutz Roeder's Reflector 4.0.3.0 that allows to dump an assembly to source code files, contains the following new features:

  • Assemblyinfo.cs is generated
  • Reflector supports IL code as another language => FileDisassembler can now dump assembly in IL code
  • (Custom) Attributes are written to the file (no matter what the reflector settings are)

FileDisassembler
5/22/2004 1:26:16 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [1] 


 Wednesday, May 05, 2004
FileDisassembler for Reflector 4.0

I've created a little add-in called FileDisassembler for the new version of Lutz Roeder's .NET Reflector that you can use to dump the decompiler output to files of any Reflector supported language (C#, VB.NET, Delphi). This is extremely useful if you are searching for a specific line of code as you can use VS.NET's "Find in Files" or want to convert a class from one language to another.

FileDisassembler
5/5/2004 4:10:42 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [9] 


 Tuesday, May 04, 2004
Interesting article about the future of Microsoft from a business perspective

BusinessWeek has a very interesting yet critical article about the future of Microsoft called "Microsoft's Midlife Crisis". Interesting to see the company more from a business analyst and less technical point of view.

Technology
5/4/2004 6:12:17 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Monday, May 03, 2004
Advanced HierarGrid demo application

Nigel Parham was kind enough to create and let me publish a simplified version of his business application that uses the HierarGrid. Included in the app are samples for:

- sorting, filtering
- paging with variable page size and customized style
- row highlighting
- export to Excel
- keyboard support

Please note that due to simplifying the original application, data access code was moved into the code-behind files thus resulting in methods that exceed a screen page. Of course, that should not be considered a best practice :)
Furthermore, as any code on my site it is provided as-is with no warranties, and confers no rights - please consider this as a quick tutorial or proof-of-concept.

The sample app can be downloaded here ("How to get started") and there is also a separate word document that describes installing it.
Thanks Nigel!

HierarGrid
5/3/2004 3:44:26 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Thursday, April 29, 2004
Interesting Forbes article about the commercialization of linux

This article talks about the trend of linux distributors to commercialize the OS and cites Rick Carey, a former proponent of OSS who was Chief Technology Architect at Merril Lynch and now Bank One: "The companies that are trying to treat Linux like it's regular software and have a business model based on per-CPU or per-desktop licensing worry the heck out of me. For us, that makes Linux prohibitively expensive. And it makes a stronger case for us to go Windows".

Technology
4/29/2004 1:38:33 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 


 Tuesday, March 30, 2004
Article on ASPAlliance about LoadControl vs LoadTemplate

While developing the HierarGrid I noticed that there are some subtle differences between loading UserControls with Page.LoadControl and Page.LoadTemplate. Without digging deeper into that I decided to add a property “TemplateControlMode” to the HierarGrid so that the developer can choose which way to load the template.

After some users asked what the "right" setting for the property is or reported exceptions that were related to choosing the "wrong" setting, I decided to take a look at the two implementations to find the differences. My new article on ASPAlliance explains what I've found.

ASP.NET | HierarGrid
3/30/2004 2:55:27 PM (W. Europe Standard Time, UTC+01:00)  #  Comments [0] 



Categories

Search

Blogroll


<January 2006>
SunMonTueWedThuFriSat
25262728293031
1234567
891011121314
15161718192021
22232425262728
2930311234

RSS 2.0 | Atom 1.0 | CDF


Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

© Copyright 2010, Denis Bauer