Modifying a compile assembly when no longer have source#

So while I was at the MVP Summit, an old client got a hold of me and said there was a weird error on the site when a user was trying to post something.  He sent me a screenshot and it said could not login as sa to sql server.  I remoted into the server where they had moved the application and looked in the web.config file and did not see any connection string that had sa as the user name.  So I was stumped.  I began to look at the stack trace and realized which assembly this was coming from.  This happened to be the only assembly which did not have the source code on the server.  I wrote the app over 6 years ago and the laptop the source was on had recently had a failed hard drive.

Anyway, it was a 1.1 app from visual studio 2003.  Yes I used to do a little VB. :)  So I realized that there must have been a connection string hard coded in the assembly where the stack trace was coming from.  Oh no!  How was i going to fix this without changing the sa password on their new host which was not really an option? 

First thing I did was download reflector here. I opened the assembly and did see the hard code connection string.  Man what an idiot for doing that.  Don’t know why I did that at the time, but not a very smart move. So I was stuck.  How do I edit an assembly without having to export all the code from reflector, find visual studio 2003 and run it in a virtual, download the rest of the app and pray that I could get it to work.  Well i searched for modifying a .net assembly and found this: Reflexil - . It is a plug-in that works inside of reflector that allows the modification of the code in the assembly.  So i downloaded it opened the assembly, changed the connection string code and then saved it.  The .dll ended up being a third the size, but still worked after deploying it to the server.  I was shocked.  I just had edited a 1.1 assembly on a windows 7 laptop using reflector while in a session during the MVP summit.  Pretty cool I think.  Saved me a whole day of figuring out how to run visual studio 2003 and get that code compiled again.

Wednesday, March 25, 2009 7:42:51 AM UTC #     |  Trackback


ASP.NET MVC 1.0 Release Candidate Is Released#

Time to dig into the T4 template system (learn here) in Visual Studio since they added a cool feature for generating scaffold controllers and views. Check out ScottGu's Article, of course. I am thinking that this was influenced by the SubSonic MVC Scaffold Addin from Rob Conery a little bit ago. I am so happy that we are going to have our own scaffold playground with built in tools. It is getting so much closer to how I really want to develop web apps. Woohoo!

I know it has been a long time since i blogged, since before the holidays. Four kids is a little bit busier than I imagined, but all worth it. I am still trying to stay up late to learn more new things coming out in the web world, as I love the information overload. Much more to come soon I am sure!

Just found this link. You will need this to check out the MVC futures stuff that has Html.TextBoxFor(p => p.PropteryName).

Wednesday, January 28, 2009 8:31:47 AM UTC #     |  Trackback


How to speed up your ASP.NET Website#

Recently we noticed that our site was a little sluggish.  Now of course when we started to look at why it was slow sometimes and not others, we opened up a huge can of worms.  Was it our code?  Was it our server?  Was it our proxy server?  Was it our database?  Was it our graphics?  Was it the JavaScript?  Or was it just that the end user had a slow connection?  Well it was all of them. 

Sometimes we forget that not everyone has FIOS.  We are very lucky to have a 20 Mbps / 20 Mbps connection at work.  So first thing we did was to look at the size of our pages when downloading the html, CSS, images and JavaScript.  We were shocked at the size of the files.  The first eye opening fact was that our home page was 1.5 MB.  Whoa.  The best tool that we found to figure the details out was YSlow.  Here is a snippet from their site about what the tool does:

YSlow analyzes web pages and tells you why they're slow based on the rules for high performance web sites. YSlow is a Firefox add-on integrated with the popular Firebug web development tool

This tool saved us so much time figuring out what our issues were.  I highly suggest reading the rules.  Also you can listen to a recent podcast from DotNetRocks: YSlow! Steve Souders finds Website Bottlenecks

So we began the process of optimizing the client.  The first thing you can do is to compress the JavaScript, CSS and html files on the server to reduce the file download size up to 75% on the client.  The way to do this in IIS6 is to enable GZip compression.  This is turned off by default which I think should actually be turned on by default.  Here is some info on how to enable it for specific file types.  Don't forget the .axd files if you use and Ajax in webforms.

Using HTTP Compression for Faster Downloads (IIS 6.0)

So next on our list was minimizing the size of the images that we were using as backgrounds in CSS.  They are the first calls from the browser when loaded from CSS.  Also moving JavaScript references to the bottom of the page helps.  The browser using a blocking request when loading JavaScript files, so if you have them at the top of the page, you will get a perceived load issue since the browser waits for that first.  The best thing to get out of optimizing for the client is the perceived load to the user which really makes the most difference.

So after removing the client side issues we realized we had a database load issue on certain pages with many records.  Well we found out we ran into the famous ORM gotcha of way too many queries when using strictly the data objects with related foreign key objects.  For instance, by relating a member record to the aspnet user table and doing a foreach on the member and then checking to see their username on the aspnet user table, it will cause another db query to get that info for each user.  Sometimes when using the orm objects that are generated instead of writing a custom query to populate your own domain object, you can get into a lot of trouble.

Our website has many applications to it, some mvc and some using webforms.  We have noticed a significant speed increase on the mvc sites.  There is less code to render and there is no Viewstate so right away there is some performance increases. 

I hope that this helps some other people figure out why their site is slow for some people some of the time.

Wednesday, December 10, 2008 9:52:17 AM UTC #     |  Trackback


Monday, December 10, 2007 12:09:55 PM UTC #     |  Trackback


Subsonic and Microsoft#

I have been using SubSonic for about a year now and have used it on almost every web project I have done in the last year.  I really have been wondering recently whether or not SubSonic was going to keep going with the MVC architecture that Microsoft is currently developing.  I can't even think of creating a website without it. 

Anyway I had started to think that maybe Microsoft would eventually try to hire Rob Conery especially after they just hired Phil Haack who also helped with SubSonic.  Well it looks like Microsoft is hiring Rob Conery as he posted here:

I am pretty happy about this as now I believe that SubSonic is alive and well and that it will be the convention-driven toolset for Microsoft’s new MVC framework.  I am very excited to see where this goes.

Monday, October 29, 2007 7:44:47 AM UTC #     |  Trackback


TFS and Visual Studio 2005 Cache Issues#

Sometimes when I need to re-sync my project source files in team foundation server, I have to delete the workspace and then get the latest project source files, but have always been frustrated that I have to get all projects from that tree even if it was from different branches.  Well one way to avoid that, at least within vista, is to delete the cache in your application data folder which caches you data in the folder:

C:\Users\Jim\AppData\Local\Microsoft\Team Foundation\1.0\Cache

 You may not have the same nave Jim, but you get the idea.  I think in XP it is something like C:\Documents and Settings\application data\blah\blah\blah.

Anyway, when you delete all the data and then delete the files where they are stored locally you will get a fresh latest without having to mess up the rest of you tree for other projects in the same structure.

Friday, August 31, 2007 8:14:27 AM UTC #     |  Trackback


Visual Studio 2008 beta 2 JavaScript Intellisense broken#

I was preparing for my session for Jacksonville Code tonight which is coming in a few days and noticed that my JavaScript intellisense no longer worked in Visual Studio 2008 beta 2.  Since part of my session requires that intellisense works and the fact that it is so much easier to write JavaScript, I was in a little bit of a panic.  I looked up the problem in Google and found this post,

Basically two registry entries that must have gotten messed up when I uninstalled beta 1 and installed beta 2:


"CodeBase"=file:///C:\\Program Files\\Microsoft Visual Studio 9.0\\Common7\\IDE\\Microsoft.JScript.AuthoringServices.dll



"CodeBase"=file:///C:\\Program Files\\Microsoft Visual Studio 9.0\\Common7\\IDE\\Microsoft.JScript.AuthoringServices.dll

Gotta love the community! 


Friday, August 24, 2007 9:51:07 AM UTC #     |  Trackback


Practical Guide to Web Browser Testing for Ajax and CSS#

If any of you write web applications for larger clients you are probably starting to see the same issues I am.  There are too many browsers to support now!  Welcome to browser hell.  It is beginning to drive me crazy.  Here are the latest stats from w3 schools on browser usage:

Browser Statistics Month by Month

2007 IE7 IE6 IE5 Fx Moz S O
June 19.7% 37.3% 1.5% 34.0% 1.4% 1.3% 1.8%
May 19.2% 38.1% 1.5% 33.7% 1.3% 1.4% 1.7%
April 19.1% 38.4% 1.7% 32.9% 1.3% 1.5% 1.6%
March 18.0% 38.7% 2.0% 31.8% 1.3% 1.6% 1.6%
February 16.4% 39.8% 2.5% 31.2% 1.4% 1.7% 1.5%
January 13.3% 42.3% 3.0% 31.0% 1.5% 1.7% 1.5%


This especially becomes an issue when you are are writing bleeding edge apps using Ajax and silverlight and developing on a vista machine.  Well first you need a way to test IE 6.  I have given up on IE 5, but there is a decent solution for testing with IE 6 on vista or any other machine where you are already running IE 7.  See you can't run both browsers at the same time.  So I run virtual PC 2007 which is free.  They have a A VPC hard disk image containing a pre-activated Windows XP SP2, and either IE6 or IE7 and the IE7 Readiness Toolkit: Internet Explorer Application Compatibility VPC Image.  The VHD expires August 2007, but I bet there will be an update to the expiration date soon.

Now you have IE 6 ready to test, but what about the others.  Obviously you need firefox and might as well download safari for windows and Opera.  Now I realize that safari only says 1.3% above, but many of you may have a client that works on a mac, which I do.  So now I have to support Safari 2. whatever on the mac OS x.  Now this one is a pain to support.  I am trying to figure out how to do this currently and have come up with a couple of solutions.  First you are not allowed to create a virtual image of mac OS x using vmware or virtual PC because apple does not allow it.  I guess they want you to buy and ibook and virtualize vista. But I think I may have found a way to virtualize mac os x on vista.  I am going to try it this week and let you know how it goes.  It looks kind of painful so I may just use a paid service, browsrcamp, which offers a vnc connection to a mac.

So now we know what browsers to test and how, lets look at what libraries we should use for Ajax.  ASP.NET Ajax is one obvious answer.  It comes with built in support for all the browsers I have mentioned above and is fairly easy to use.  Now I am a little biased, but I also have worked with jQuery which is also a nice Ajax library and has a strong community also.

When you are running your tests if you regularly validate your html, you will save hours ahead of time before you run your manual tests.

Good luck and may the browser be with you!

Monday, August 06, 2007 10:46:39 AM UTC #     |  Trackback


A Day of Ajax in Tampa changed to 6/21/2007#

I guess there has been a double booking of the Microsoft room for the 20th, so we had to move it to the 21st.  I hope you all can still make it.  we will all be speaking at Tampa Code Camp also on July 14th, so try to catch us there if you can also.  I will be showing some Silverlight and Ajax stuff at Tampa Code Camp.

Sunday, June 17, 2007 7:44:57 AM UTC #     |  Trackback


A Day of AJAX in Tampa on 6/20/2007#

A few of us are having a Day of AJAX in Tampa, FL on June 20th, 2007 from 8:30 - 5:00.  This will be a fun day of learning ASP.NET AJAX for free put on by ASPSOFT, Microsoft and DevFish.NET. Join us for a deep dive into the intricacies of Ajax development using the Microsoft suite of tools. The agenda for the day will be:

8:30am - 9:00am : Registration and welcome
9:00am - 10:30am : Joe Healy ::  Introductions :: An overview of Microsoft Ajax
10:30am - 10:45am : BREAK
10:45am - 12:15pm : Jim Zimmerman :: Building controls and extenders
12:15pm - 1:00pm : LUNCH (pizza and soda)
1:00pm - 2:30pm : Jay Kimble :: Ajax Best Practices
2:30pm - 2:45pm : BREAK
2:45pm - 3:45pm : Joe Healy :: Ajax and JavaScript in Visual Studio "Orcas"
3:45pm - 4:00pm : Giveaways (including a Zune!)
4:00pm - 5:00pm : Open dialog with attendees

All topics are covered at a 200-level. Space is limited, so register early to get your seat at A Day of Ajax!

Go to to register.  I think there are only about 75 seats available, so you will want to register as soon as possible to get in.

Look forward to seeing you there.  Hopefully I will have a few copies of Beginning ASP.NET 2.0 AJAX to give away at the event.

Thursday, May 24, 2007 11:23:08 AM UTC #     |  Trackback


ASP.NET AJAX From Scratch Webcast Download#

MSDN has uploaded the Webcast I did last week.  It was my first one so there is some funny mess ups in the beginning.  I didn't know how to get back to the live meeting slides after switching to share my applications.  the host had to get on the line and tell me what to click.  Oh well.  I won't make that mistake again.

If you want to view it you can see it on-demand here, ASP.NET AJAX From Scratch MSDN Webcast.  I would love to hear any feedback you may have.

Thursday, May 24, 2007 11:08:22 AM UTC #     |  Trackback


New Book - Beginning ASP.NET 2.0 AJAX#

For those few that actually subscribe to my blog and were wondering if i fell from the face of the earth, well I did.  I have just returned from planet AJAX and am still having dreams of intellisense for JavaScript.  The lead author is having a hard time deciding on which cover to choose and is wondering what you think over at his blog. :) If you go to that post, it is the only real proof that i have that i have been working on a book with five other AJAX gurus as we think we are.  It also looks like Wally has been working on some other books in his WTF series that i was unaware of.

Writing a bok has been one  of the biggest challenges of my career.  At first I thought, "How hard could this be?"  Well it is very challenging and takes about 2-3 times more work than you would think.  With all the revisions that you must go through and the research into things that you thought you knew, it takes a toll. 

 I must commend my wife for being as patient as she has been with all the late nights i had been wirting.  The first official printed copy will be signed by me and given to her.  Although she will not understand a thing i said in the chapters i wrote, she will at least see that is is real and i wasn't just typing in my MSN instant messenging client.

I will be blogging much more often in the weeks to come.  Hopefully you haven't all deleted your subscription in your RSS reader yet. :)

Sunday, April 29, 2007 4:56:06 PM UTC #     |  Trackback


SubSonic 2.0 - New release coming soon...#

I just got done reading Rob Conery's recent post on what's coming in Subsonic 2.0 and I am so excited.  I already use this stuff everyday in all of my projects for the last 3 months and am sure that many will in the future once they understand how powerful this is.  For those that do not know what SubSonic it, check it out at CodePlex.

For those of you at the Sarasota User's Group on Tuesday, I am pretty impressed at how many of you have emailed me telling me about your experience and asking additional questions on how to use it already.  I guess it made quite an impression.  I know it did for me when I first stumbled across it and I think it will for most 2.0 web developers out there.

Saturday, February 24, 2007 10:34:06 AM UTC #     |  Trackback


Sarasota Users Group Meeting#

I am speaking on Tuesday, February 20, at the Sarasota .NET Developers Group on Code Generation with ASP.NET.  I am excited to meet the group down in Sarasota and visit another users group.  If you are going to be around the area, stop down and check out my session.  It will be at 6 p.m. at the Sarasota Community Foundation, located at 2635 Fruitville Rd., Sarasota, FL 34237 (just west of Tuttle on the north side of Fruitville).

Here is the session description:

Code Generation with ASP.NET

Learn why there is no need to ever write 1000’s of lines of code again for your Data Access Layer. I will examine the different open source and commercial choices out there for code generation including SubSonic, .NET Tiers using Codesmith, and the new BLINQ stuff coming out with Orcas. I will show practical uses for code generation and also how to best set up your team and / or yourself to become successful when using code generation with your projects.

Look forward to seeing you there!

Tuesday, February 20, 2007 7:20:04 AM UTC #     |  Trackback


ASP.NET AJAX 1.0 Released#

ASP.NET AJAX 1.0 has just released!  We can now start to write great AJAX applications that will be fully supported.  They may have taken a while, but that is too be expected when they create a massive base framework that will be supported across multiple browsers.  This is not an easy task. 

This is a huge step to great things with using AJAX with ASP.NET 2.0.  I know there are a lot of frameworks out there, but this is one that will be around for awhile and is easily contributed to.  They have also extended the JavaScript language so that it feels a little bit more like C# and wait until they release the new Visual Studio where we will get intellisense for JavaScript.  I am so excited to see this in action.

Be sure to check out and watch some of the video demos they have and implement their code samples.  While we have all seen demos like this before, we can actually implement these scenarios in a supported environment.  Have fun!

 |  | 
Wednesday, January 24, 2007 11:52:38 AM UTC #     |  Trackback


SubSonic - The Zero Code DAL for ASP.NET#

Ok, I am still having a hard time sitting down after playing with this and getting it to work on a few prototypes using existing database schemas. It works with both SQL Server 2000 and 2005 along with MySql.  It has a few issues, all of which are correctable, but I have to say this is going to change the way I develop every web application.  It truly is a RAD toolkit that helps your website build itself as you go.  As I write this my mind is wondering at the possibilities.  The best thing about this is that it is open source.  Go to the SubSonic Project on CodePlex and download the source yourself. 

Make sure to spend the 20 minutes watching the Webcast on how to set it up.  You will be amazed.  If it does not work at first with your database schema or you have weird errors make sure to try and build all the class files and try to compile it.  There may be some naming conventions that you will need to follow in order to get it to compile right.  One off the top of my head is to not name a column the same name as any table.  I just changed the way I named a few columns and in what order and it worked beautifully.

This project has great promise because it can really help teams of developers build projects very quickly.  You can download the release, but if you want to be cutting edge I suggest you download the latest source code from the Latest Source Control Commits.  They have really added a lot of functionality since the last release.  I don't know how many bugs there are, but it worked good for me.

You can also listen to more about it on a Dotnetrocks podcast from October 2006 with Rob Conery.

Hats off to Rob Conery for starting a very cool toolkit for RAD web development in ASP.NET!  Thank you!

Tuesday, December 19, 2006 8:01:56 AM UTC #     |  Trackback


Visual Studio 2005 SP1 Released#

yeah, SP1 is finally here and has over 1000 bug fixes.  I hope they have fixed some vista issues also in the beta I saw up there after you apply service pack 1.  I could not get to it yet, but will have to update to sp1 first anyway. 

You can get all the service pack here.  Happy downloading!  I hope it doesn't break anything. It has to fix more things than it can break, I would think at this point.

Saturday, December 16, 2006 9:51:21 AM UTC #     |  Trackback


ASP.NET AJAX 1.0 RC has been released#

You can now download the Release Candidate of ASP.NET AJAX 1.0.  It is time to get your app's ready.  I am pretty sure we will not see too many changes at all now and can confidently write code that will be used when it ships next month. 

This has been a long wait, but well worth it.  I am sure that this framework will grow and grow as it matures.  It has been a little painful to wait this long for a release, but is well worth it.  These guys have worked so hard to come up with a release that works cross browser and is easy to use to develop with and is relatively bug free.  I am excited to all the new features that will be added once there is a 1.0 release.  I think people will really embrace it and add many controls that can be shared across the community.

 |  | 
Friday, December 15, 2006 10:53:02 AM UTC #     |  Trackback


Multiple Forms and the Enter Button in ASP.NET 2.0#

If you are using ASP.NET 2.0 and have multiple forms or submit buttons, you may have found out that you can only have one form tag in the master page and are not allowed to have another form tag in the page. 

If you want to have the user press the enter button on the keyboard to cause any of your multiple submit buttons to submit, you have to use the <asp:Panel control and set the DefaultButton property equal to the button id that is in that panel. 

For example, I had an asp:Login control in a master page and also a search form.  When the user wanted to search and hit the enter key, it would try to login.  You could set the DefaultButton property in the master form element, but that is also dangerous if you have other forms throughout your site.  Also if you want to have it work depending on where the user has focus, then you have to use the panel control.

Tuesday, November 07, 2006 8:48:58 AM UTC #     |  Trackback


Why use VS 2005 Web Application Projects?#

So I have been using several applications lately that use the Web Application Projects method lately and I have also created some.  One in particular is driving me crazy because the source code is not on the server and I cannot fix the problem unless I find the source code and can compile it.  Well I found a new version and cannot compile it.  Where is the old version?  I wish I just had the source on the server so that I could make a simple modification without having to try to find and recompile the entire project and upload it again. 

The next thing that pops up in my head is when I used to use Visual Studio 2003 and I would be replacing the DLL on the server and the site would go down for that 20 - 30 seconds or how ever long it takes to upload the new DLL.  Sometimes I would have to check that the file made it up there at all.  Sometimes this can cause permission issues, sometimes if the upload does not complete and you do not realize it then your site is down.  Imagine your entire site goes down all night because you did not check to make sure the DLL uploaded completely.   Anyway this does not happen that often, but does at the wrong times it seems.

So far it seems as though WAP might be a bad idea anyway to do this, but it does have it's added benefits.  It is nice to have one library to push up to the server that is compiled and locked down.  This works great for applications that you do not want to have someone else, especially on a multi-hosted server that you do not own, look at or steal your source code.  Also it is great when trying to make a quick upgrade from 1.1 to 2.0.

Here is some great information from ScottGu's blog about when it is good to use the WAP method.  If you are upgrading from VS 2003 and have not realized the benefits of the default 2.0 model or want to upgrade from .NET 1.1 without too much work, then you will be more comfortable with the WAP method.  You will also own that code and will have to figure out where the specific bugs exist.   I have been in similar situations where I wish the old code I wrote 3-4 years ago was a little bit more dynamic like 2.0 and PHP.  That way anyone who needs to edit that code in the future can do it from whatever environment they are best suited with and the source code is on the server.  The dynamic compilation method allows you to edit files on the server to fix problems if it comes to needing to do that.  In an ideal world you would never want to do that, but we don't live in an ideal world.  This has been the way it is for fixing poorly written PHP and Perl applications on Linux for years.

At the end of the day, make sure that when you leave that project, that it is easy for the next guy to pick up where you left off.  If that is well documented processes, then good for you.  If you don't have time to do it, then please leave the source on the server where they can modify it when something needs to change.

Friday, November 03, 2006 7:55:13 AM UTC #     |  Trackback


ASP.NET AJAX Beta 1.0 Release#

You can now download the new Atlas or shall I say ASP.NET AJAX.  They have several downloads including the toolkit with a ton of cool controls for Ajax and also a library for non users.  Pretty cool stuff. 

You know they say they are going to commit to this for 10 years.  I don't know about you, but anyone who is going to support this type of technology for 10 years is one that you should be getting to know now.  This is not going anywhere and you know Microsoft will always be adding features to this stuff.

 |  | 
Tuesday, October 24, 2006 8:13:16 AM UTC #     |  Trackback


Script# Prototype from Nikhil#
Now this is some very cool stuff. Nikhil, the architect of Atlas, has released a prototype to create atlas / ajax apps in c# without writing javascript code. You can check the post and download some bits here. I haven't had time to play with it yet, but I will post a review when I do. I actually like writing javascript, but i will try anything that makes life easier when writing complex ajax apps.

Have fun!
 |  | 
Wednesday, May 24, 2006 8:00:00 AM UTC #     |  Trackback


Debugging Javascript with Visual Studio 2005#
Ok, now some of you may already know this, so don't laugh too hard that I have been writing Ajax - style apps for almost a year and have just been using fiddler to do most of my debugging. If you have not heard of fiddler you can get that here.

Anyway, I stumbled across a very easy way to debug javascript with Visual Studio 2005. I assume this also works for older versions. All that you need to do is put debugger; on the line where you want to set a breakpoint and then open the page in IE and it will ask you if what debugger you want to use. Note: You need to make sure you are allowing javascript to be debugged in IE by checking the appropiate checkbox in intenet options > advanced.

Once the debugger is open you can step though the code like you normally would in a c# app and watch the variables. If you are making ajax calls and returning xml or javascript you can also see that data come back. If you are using JSON you can actually continue stepping through that code that was returned from you server in runtime. Pretty cool stuff! It has just made my life so much easier and I am suprised I have not heard of this before. I guess I had my head in the sand for a little bit. I hope this helps someone who has been looking for how to do this.
 |  | 
Friday, April 14, 2006 8:00:00 AM UTC #     |  Trackback


Best .NET Developer Tool List#
This is a great find.

Scott Hanselman's 2005 Ultimate Developer and Power Users Tool List

I have already downloaded 12 programs in the last few hours. Take some time and look at all of the tools. It will make you much more productive. I am excited to start using these tools now.
Monday, March 27, 2006 9:00:00 AM UTC #     |  Trackback


A nice AJAX Architecture Podcast#
Here is a link to a nice podcast on some design patterns for ajax and some good architecting practices. It is done by Polymorphic Podcast.

Podcast are a great way to get up to speed. Listen in your car or while you are working. I find it better in the car because I can really listen. Kind of distracting while working if you ask me. I just tried it and I think I will wait until i have a half hour drive accross town.

Thursday, February 23, 2006 10:00:00 AM UTC #     |  Trackback


Annoying Style tags when resizing tables#
Does anyone know of a way to turn off the feature in visual studio where it insists on creating stupid style tags everytime i resize a table? It is driving me crazy. I found a simple program that removes them here: but I really would just like to turn this feature off. It is very annoying and I have gone to writing my html by hand and no longer using the design gui for anything. If anybody has a clue on how to turn this off, please comment below.
Thursday, February 09, 2006 10:00:00 AM UTC #     |  Trackback


.NET Developer Podcasts#
Well you know you have reached true geek status when you start listening to .NET developer radio or what we are now calling podcasts. Podcasts are so cool. I love listening to shows I actually can learn from. I listen to DotNetRocks and aspnet podcast. I found that one recently. I am sure there are others, but I only know of those 2 right now. Here are the links to those podcasts:


Tuesday, January 10, 2006 10:00:00 AM UTC #     |  Trackback


Using GridView and ObjectDataSource for Paging and Sorting#
I was scratching my head trying to figure out how to automagically sort and page through a dataset in 2.0 without having to write my own custom code like I used to have to in .net 1.1. In my code behind I was calling my business object and then setting the datasource properties in the Gridview. I could not get the sorting and paging to work. It was driving me crazy. Then I read that you need to set the DataSourceID property of the GridView to a sqldatasource or objectdatasource.

So I created an objectdatasource and pointed it to my business ojbect function that was doing the search and returning a dataset. I set the parameters of the ObjectDataSource to use QueryString and then everything worked fine.

I then was able to delete all of the code in my code behind. Amazing. You can actually implement a fully functional GridView without writing any code in a code-behind page. I love it.
Thursday, December 15, 2005 10:00:00 AM UTC #     |  Trackback


.NET 1.1 Sites no longer work after upgrade from .NET 2.0 beta 2 to RTM#
Ok, now I am writing this after panicking for about an hour after updating my server from .NET 2.0 beta 2 to .NET 2.0 RTM. After uninstalling beta 2 and then installing the rtm for .net 2.0 I noticed that my .net 1.1 sites no longer worked. Two things happened. On one of the 1.1 sites it changed all of the page mappings to 2.0. That was an easy fix, I just changed the mappings back to 1.1.

The second problem was stranger. I could not find any aspx pages on the site. Although I had proper mappings reset. The problem again was in the web service extensions. Believe it or not I went on that track after searching for "404 error only on aspx pages 2.0" and finding an old post of my own. Go figure. Anyway I went to IIS and clicked on Web Service Extensions. I noticed that the ASP.NET v1.1.4322 extension was not even there anymore and that it had gotten deleted. All you need to do is click the "Add a new web serice extension" link and then name it "ASP.NET v1.1.4322" and then browse to "C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\aspnet_isapi.dll" when it asks after you type in the name. Do not forget to click the "Set extension status to Allowed". Everything should work fine now.
Sunday, December 11, 2005 10:00:00 AM UTC #     |  Trackback


Running .NET 1.1 and .NET 2.0 at the same time with IIS#
The other day I was trying to set up my bug tracking software on a server that was running only websites using the new 2.0 stuff. Well when I went to run the .net 1.1 application, I got a "Service Unavailable" errror in red. What the hell is this I thought. Well after many nights of just saying, well I don't need that app right now on this dev server anyway, I decided to dig into what was going on. I noticed that there was only one app pool running for IIS when I looked at the task manager. Then I thought that the two might be in conflict trying to access simlar resources. So I created a separate app pool for 1.1 and one for 2.0 sites. And magically it worked.

I hope this helps someone that is at their wits end trying to figure this one out. I feel your pain.
Wednesday, November 16, 2005 10:00:00 AM UTC #     |  Trackback


Page not found error with .aspx pages and iis 6.0 on Windows 2003#
I am setting up a new windows 2003 server and I was pulling my hair out trying to figure out how to get my aspx page to show up in the browser. I kept getting a page not found 404 error for every aspx page but not .html pages.

So, I opened up IIS manager and went to Webservice Extensions and noticed that ASP.NET was prohibited. So I right clicked on it and set it to be allowed. In Windows 2003, all the webservice extensions are prohibited by default to ensure security.

Hopefully this will save someone some time when configuring a new windows 2003 box.
Thursday, October 13, 2005 8:00:00 AM UTC #     |  Trackback



All content © 2014, Jim Zimmerman
New Book
Links to me
On this page
<April 2014>
Blogroll OPML
Favorite Links

Powered by: newtelligence dasBlog 1.9.6264.0

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

Send mail to the author(s) E-mail