|
>
 Saturday, June 17, 2006
 |
|
 |
|
|
|
|
|
Yes, at last, I am posting my code for my SDC conference sessions. I am quite sorry about this delay, but I have been travelling non-stop since the conference, and I had at least one million other deadlines upon me and Internet issues during the week following when I had promised to post. So, hopefully apology accepted...here is the code references for all 4 of my sessions!!!!
How ASP.NET 2.0 Processes Requests - Handlers, Modules, Caching, Session and other fun objects involved in the round-trip
- HttpHandlers.zip
- HttpHandlersVB.zip
- If you get ASP.NET Pro magazine, I also wrote an article on this subject, which was reprinted with permission in the SDC magazine for this conference
ASP.NET Security - It's About More than Just Credentials
Applied ASP.NET 2.0 - Essentials for Building Professional Web Sites
Performance Tuning and Monitoring your ASP.NET Applications
|
|
|
 |
|
 |
 Friday, May 12, 2006
 Saturday, May 06, 2006
 Friday, April 28, 2006
 |
|
 |
|
|
|
|
|
I recently updated my PhotoGallery sample code that illustrates many techniques including:
- The use of profiles that store preferred theme and culture
- Dynamic theme selection at runtime based on profile settings
- The use of ASP.NET 2.0 localization features
- Setting the request thread's culture dynamically based on profile settings
- Database localization (table selection by culture)
- Caching by culture and theme
- Workaround for retrieving profile information for custom caching (GetVaryByCustomString())
The sample update is at this link: http://www.dasblonde.net/downloads/VS2005/Globalization/GalleryDemo20.zip
These features were always in the sample, but I came up with some improvements for caching and profiles, and I updated the sample so that all pages cache appropriately. I also created a full SQL script that would create the database and insert records, so that you no longer have to restore a full databas to create those records. Otherwise the sample is much the same. Enjoy!
|
|
|
 |
|
 |
 Monday, April 10, 2006
 Monday, March 20, 2006
 |
|
 |
|
|
|
|
|
Updated 04/09/06
See the previous few entries with code for my interoperability tutorial, and web services tutorial. Collectively they include the code for this session. Thanks!
|
|
|
 |
|
 |
 |
|
 |
|
|
|
|
|
UPDATED: 3/27/06
At last, here are the links to our interop code from the tutorial at SD West. For those that didn't attend, we covered the following:
- OASIS Web Services Security (WSS) between .NET 2.0/WSE 3.0 and BEA WebLogic Workshop 8.1 with SP5
- Reliable Messaging between WCF and BEA WebLogic 9.0
- Anant (BEA) and I pulled this one together, once again Kirill providing some great human interoperablity with feedback from some of the earlier interop plugfests
- MTOM between WCF and Axis2
Please enjoy!
|
|
|
 |
|
 |
 |
|
 |
|
|
|
|
|
I have zipped up a collection of ClickOnce samples for your enjoyment. You may find a few of these samples interesting since they touch on some of the practical uses for ClickOnce. Here's the overview of the individual samples you'll find in the zip:
- ClickOnceContext - shows you how to detect a ClickOnce application from one that is not, along with other important states such as IsNetworkDeployed, etc.
- ClickOnceFirstRun - includes a utility for detecting first run ever versus first run since last update
- ClickOnceDataFiles - using the data directory for local user storage
- ClickOnceIsolatedStorage - using isolated storage for local user storage
- ClickOnceDeployGAC - shows you how to use a custom setup project (MSI) that deploys a GAC dependency for a ClickOnce application, as a bootstrapped MSI
- ClickOnceOnlineDetection - includes a utility for detecting when the application is deployed remotely, running as clickonce, and online
- ClickOnceMsmq - a WCF service with netMsmqBinding provides a reliable message queue to send transactions to a service even if the client is offline
- ClickOnceOnlineService - illustrates a factory pattern to use a WCF service used for connected clients, local data directory used for offline clients
- ClickOnceUtils - utilities used for several of these samples
- LocalizedFileGroups - sample illustrates a globalized application that uses download file groups to initiate download of required files in demand
- ManualCheckForUpdates - illustrates manually detecting updates
I have another sample for deploying a database script, that I am adding some things to for an upcoming conference, and will post here when I have completed the changes.
Enjoy! ClickOnceSamples.zip (1.41 MB)
|
|
|
 |
|
 |
 Wednesday, March 08, 2006
 Sunday, February 19, 2006
 |
|
 |
|
|
|
|
|
After rebuilding my machine a few weeks ago, once again I find myself running into old problems and trying to remember how to repair them. This time, generating keys to strongly name my asesmblies through the Signing tab in Visual Studio 2005. I thought I would share it this time in case others have seen this problem...and struggled with it...
The Scenario:
For a Windows client application, open the Properties for the project, navigate to the Signing tab, check Sign the assembly and create a new key. In the Create Strong Name Key dialog, provide a new key name, provide a password, and click "OK".
The Problem:
An error message is presented: Create strong name key the operation could not be completed. Access is denied.
The problem repeats itself when I tried to use the strong name utility (sn.exe), with this error: Failed to generate strong name key pair. Access is denied.
The Solution:
I had to give my user account access to the key container in C:\Documents and Settings\All Users\Application Data\Microsoft\Crypto\RSA\MachineKeys. It turns out, even administrator rights were disabled on my machine! I am not sure if this was the default installation (I rebuilt the machine a few weeks ago) or if this is modified when I install WinFX, or if when I granted ASP.NET and NETWORK SERVICE access it somehow lost the inherited permissions that were granted when I installed the OS. In any case, at least it seems predictable, you need access to the key store in order to generate keys, makes sense!
How does it work?
Each container created using sn.exe -i is located in the MachineKeys directory (unless you specify elsewhere). The default key container that is used by sn.exe is also in that location.
In the event you reset your key container to a new one, and forget where it is...you can reset the key container for the strong name utility using sn.exe -c. So, if the account access fix doesn't work, you may be using an alternate key store so a reset may be in order.
I googled this topic a bit before writing this blog, and was surprised that very little has been written on this subject for a solution...furthermore...many people actually rebuilt their machines to solve the problem!!!! I hope this blog entry prevents a few more of those!!!
|
|
|
 |
|
 |
|
|
ON THIS PAGE
|
|
|
|
SEARCH
|
|
|
|
CATEGORIES
|
|
|
|
ARCHIVES
|
| | Sun | Mon | Tue | Wed | Thu | Fri | Sat |
|---|
| 28 | 29 | 30 | 31 | 1 | 2 | 3 | | 4 | 5 | 6 | 7 | 8 | 9 | 10 | | 11 | 12 | 13 | 14 | 15 | 16 | 17 | | 18 | 19 | 20 | 21 | 22 | 23 | 24 | | 25 | 26 | 27 | 28 | 29 | 30 | 1 | | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
|
|
BLOGROLL
|
|
|
|
|
 |
|