When in Doubt Clear Your Bin

This is a reminder to myself, and anyone facing down a weird error message when trying to build their ASP.NET application: you need to try clearing out your Bin folder and rebuilding it. I've 'fixed' probably a dozen build problems so far just by clearing out my Bin and rebuilding the application. To clear your Bin folder:

  1. Find your project file in Visual Studio and left click it.
  2. Go up to the icons in your Solution Explorer and click 'Show All Files'.
  3. Find your Bin folder in your project, and right click it.
  4. Click 'Open File in Windows Explorer'.
  5. Select everything in the folder (Ctrl + A) and delete it.
  6. Rebuild your application.

I've got no idea why there were errors with my applications, or why this fixed them, but its always a good first line of defense. If you've got an error message you can't figure out, clean out your bin.

 


Missing Data Types in Enterprise Architect

If you've used Sparx System's EA, you might know that its a quirky little program at times. I've come to love the power it gives me to document designs and interactions, even if I've had to give myself a crash course on UML just to get my head around it.

One thing I hate though is that sometimes things just don't work and its not obvious why its not working. When trying to create a Data Modeling Diagram to display the database objects involved in a proposed update, I found that the Data Types selection for my columns was empty: all the entries were missing. I was getting really frustrated until I checked on the table entity itself and found that Database for this table was not set. Once I changed to SQL Server 2000, my Data Type drop downs populated with the correct values.

In sort, if you're using EA for a database diagram and your data type selections are blank, you need to check the database setting on the table itself.

 

ASP.NET Error Message: Invalid postback or callback argument

If you're trying to create a post-back from Javascript in ASP.NET, you might have come across the following error:

Invalid postback or callback argument. Event validation is enabled using in configuration or in a page. For security purposes, this feature verifies that arguments to postback or callback events originate from the server control that originally rendered them. If the data is valid and expected, use the ClientScriptManager.RegisterForEventValidation method in order to register the postback or callback data for validation.

This message is caused because ASP is attempting to validate that a given post-back that was initiated from Javascript is really supposed to be happening; basically, it is an attempt to try to prevent cross-site scripting from issuing post-backs. You can do as the message says and register the callback, you can edit your web.config file, or you can do what I do, and add the following line to your Page directive in your .aspx page like so:

<%@ Page EnableEventValidation="false" ... %>

Be aware that by setting EnableEventValidation to false, you're opening a hole in your security. I'm using this in a situation where the risk has been minimized, but if you're including external scripts, you might want to actually go through the trouble of registering the event.

 

Weird ColdFusion 9 ORM Error

I'm trying to get a feel for the new ColdFusion 9 ORM setup, and I ran into an error message that I'd not seen before stating that "[Macromedia][SQLServer JDBC Driver][SQLServer]'FK3498A0CE621DF1' is not a constraint." This isn't too daunting, since I'm used to weird SQL errors, but when I refreshed the error I got back "[Macromedia][SQLServer JDBC Driver][SQLServer]Cannot find the object "post" because it does not exist or you do not have permissions." instead.Take a look at the particulars, and see if you can help me out.

 

IE Forgets Cookies on Sub-Domains with an Underscore

Internet Explorer Fail LogoOk, so one more reason to hate IE: Internet Explorer fails to hold cookies when viewing URLs that have a sub-domain with an underscore. I found this when the project I'm developing just refused to hold on to a session when viewing the site from Internet Explorer. Almost all of the server-side technology I was using was new to me, so I lost a full day trying to figure out if it was ColdFusion 9, IIS7, or the ColdFusion on Wheels framework that was breaking the sessions before I found out that the IE browsers choke on underscores. FireFox and Chrome didn't care about the underscore, but IE6 through IE8 lost their session because they couldn't hold onto the cookies for the site.

So, if you're loosing your sessions in Internet Explorer, check your URL. I'm not sure if there are other characters besides an underscore that would cause the cookie loss, but it wouldn't surprise me.

 

ColdFusion Intermittently Cannot Find CFC, Part II

Ok, follow up to yesterday's post "ColdFusion Intermittently Cannot Find CFC". I've updated my tests and still no answers. Help me figure out why ColdFusion sometimes doesn't want to CreateObject().

 

More Entries

Jon in Chicago, July 2008

I'm Jon Hartmann and I'm a C# .Net developer by day, a ColdFusion guru by night, and all around Javascript fanatic. Stay right here to read my technical posts as I grapple with mysterious error messages, user interface design questions, and all things baffling and irksome about programming for the web. Learn more about me.

Post a job. Find one. authenticjobs.com

Interested in becoming a sponsor? Contact me.