Noah Subrin's DEV Blog
Technology for Business minds
SRA University SilverLight Course Week 1
I developed an internal knowledge sharing course for the company I work for, SRA International on building SilverLight applications with SilverLight 1.0. The course is part of SRA University, which is a means of providing SRA employees with free training, provided by course developers, who volunteer their efforts. My Week 1 slides are available here. They are free for the public to download as well. Let me know if you have any questions or feedback.

MORE >>
Posted by Noah Subrin at 5/10/2008 9:51 AM | View Comments (0) | Add Comment | Trackbacks (0)
WCF Services and Windows Vista
I was working on some WCF services and encountered an unusual problem. Some services that I had run on my Windows Server 2003 machine were failing under Windows Vista with an "access denied" error. I tested the service using the built in WCF test client tool that comes with Visual Studio 2008. When I hovered over the error it gave reference to an MSDN article . The article states that running WCF services requires a service host, and  manual configuration of the HTTP server through the HTTP API may be required. For Windows Vista, it suggests running the Network services shell command (netsh) from a command prompt. To see all of the options run netsh /?. The article also supplies the syntax for Vista - netsh http add urlacl url=http://+:80/MyUri user=DOMAIN\user


I opened up a command prompt to enter the net shell command and received a user error stating that I was not authorized to issue the command. This, at first, seemed strange because I am an administrator on the machine. I dug further and found out that Vista has an "administrative command prompt" that you get to by typing "command" followed by ctl-shift-enter key strokes.

After finding my way to the Administrative command prompt, I was able to enter my netsh command. The result of executing the command  delegate this ownership from the built in administrative account to the user account under which the service is running. You can look at the existing delegations by using "netsh http show urlacl".

There is an excellent MSDN blog by Amit Lale that supplies addition details.

MORE >>
Posted by Noah Subrin at 5/4/2008 3:27 PM | View Comments (0) | Add Comment | Trackbacks (0)
New User Group in Gwinnett
There is a new .Net user group organizing in Gwinnett County Georgia. Their website is www.ggmug.com . The first meeting is Thursday, May 8 at Gwinnett Tech. Doug Turnure, Microsoft Developer Evangelist, and myself will be presenting. Doug is presenting on the topic of WCF, REST, JSON, and Syndication. I will be presenting on the topic of Workflow Services. See you there!

MORE >>
Posted by Noah Subrin at 4/23/2008 4:42 PM | View Comments (0) | Add Comment | Trackbacks (0)
Workflow Services (AKA 'Silver Services')
On Saturday, March 29, 2008 I was honored to be part of the 4th annual Atlanta Code Camp. Over 200 area developers attended. The event was a smashing success due to a lot of hard work by the organizers and volunteers.

Workflow Services are new in .Net Framework 3.5. They allow Windows Workflow Foundation (WF) workflows and Windows Communication Foundation (WCF) services to talk together. This is accomplished primarily, by the addition of two new activities, the SendActivity and the ReceiveActivity. These new activities can be dragged onto the work surface to create a workflow using Visual Studio 2008. I demonstrated how to consume a WCF service from a workflow, how to expose a WCF service endpoint in a workflow, and duplex communication. Duplex communication allows the server and the client to communicate to each other. My slide deck and code can be downloaded from this link .

The tooling for WCF is also greatly improved in Visual Studio 2008. You can test a WCF service using the WCF test client and set optional parameters for security. You can also see the request and response in the raw xml format.

I look forward to delivering this presentation at an upcoming Atlanta area user group meeting!

MORE >>
Posted by Noah Subrin at 3/31/2008 3:13 PM | View Comments (0) | Add Comment | Trackbacks (0)
Atlanta Code Camp 2008
I am proud to be part of the upcoming Atlanta Code Camp 2008being held on Saturday, March 29, 2008 at DeVry University's Decatur campus. Please come down and enjoy a full day of .Net, Geekdom, and swag featuring several members of Atlanta's Dev community including myself.

I will be giving a presentation on the .Net Framework "Silver" technology, a/k/a Workflow Services. Workflow Services is a new feature of the .net Framework 3.5 that allows integration between WCF (Windows Communication Foundation) and WF (Windows Workflow Foundation). We can call a WCF service from a WF workflow, as well as expose a WCF service as a Workflow.  My presentation is titled "You Got the Silver". Can you name the music reference this came from? A hint - the song didn't come out recently....

I am also pleased to be selected as part of the Heroes Community launch team. I will have some killer swag to give away, so you may want to stop on by.

I look forward to seeing you this Saturday!



MORE >>
Posted by Noah Subrin at 3/23/2008 7:18 PM | View Comments (0) | Add Comment | Trackbacks (0)
AJAX and Web Services
On November 5th I had the pleasure of delivering a presentation on the topic of "AJAX and Web Services" to the combined Atlanta Microsoft Professionals, Cutting Edge, and VB .Net Study groups. I discussed how we can take .asmx web services and expose them to client side JavaScript including the changes that are necessary on both the client and the server. I showed several code samples that showed passing parameters, callback functions, user context, and complex types. I also discussed client side support for ASP .Net 2.0 Profile and Authentication services. My slides can be downloaded here - enjoy. Please feel free to contact me with questions or feedback. I look forward to hearing from you

MORE >>
Posted by Noah Subrin at 11/7/2007 4:49 PM | View Comments (0) | Add Comment | Trackbacks (0)
A Step by Step Tutorial for Creating a Data Driven Web Site using MySQL and the SQLDataSource Control
Did you know you can use Visual Studio 2005s SQLDataSource control to connect to a MySQL database? Did you know that Visual Studio 2005's Data Designer Extensibility (DDEX) architecture allows extending data designers to third party databases? If you are interested in learning more about these topics check out my step by step tutorial on how to do this!

MORE >>
Posted by Noah Subrin at 9/27/2007 8:15 PM | View Comments (0) | Add Comment | Trackbacks (0)
Importing a .csv File into SQLExpress Using Bulk Insert
With the introduction of Visual Studio 2005, SQL Express can be installed on a developer’s workstation to allow local database development. The client tools to access the local database environment must be installed separately. We use SQL Server Management Studio Express (SSMSE) in my customer environment. While SSMSE is easy to use, it does not include features such as Integration Services. Certain tasks, such as importing a .csv file are not available directly from the SSMSE user interface i.e. you don’t have access to the SQL Server equivalent of the DTS Import/Export Wizard. One approach to importing flat file data into SQLExpress is based on the Bulk Insert T-SQL command.

The implementation details can be found in an article I published for the SQL Server World Wide User Group

MORE >>
Posted by Noah Subrin at 9/16/2007 2:33 AM | View Comments (0) | Add Comment | Trackbacks (0)
IIS 7.0 Features

At the ASP .Net Connections in Orlando last week, I was able to attend a session delivered by Eric Woersching, IIS Product Manager. He delivered a high level overview and demos of IIS 7.0 features. IIS 7.0 is the latest version of Microsoft's web server. It is part of Microsoft's Windows Vista and the Windows server "Longhorn" release. It is available in the Beta 2 Release. On the Vista platform, it is meant for development, but not meant for production use, because it is limited to ten simultaneous requests.

IIS 7.0 contains several interesting features. For example, the metabase file in previous versions has been replaced by a configuration file. This should be an improvement if you have ever tried to export an existing metabase configuration. The core web server has been refactored into 40 dll's which can be independently installed to allow a more granular configuration. These can be of value by reducing the attach surface, reducing the memory footprint, and building custom/specialized servers for a particular use, for example load balancing. IIS 7 core features can be extended, replaced, or modified using both managed code and Win32 API's.

We can still run legacy .Net Framework 1.1  applications in "classic mode" by using additional application pools. We can perform "URL Rewriting" which allows browsing to a target web page based on a particular file extension, such as .jpg.

Managed modules and handlers replace IHTTPModule and ISAPI filters. There also are powerful diagnostic capabilities that will allow us to more easily troubleshoot web sites and applications.

IIS 7.0 starter kits are available today to allow users to start working with IIS 7.0. An excellent source of information is the IIS Community Portal found at www.iis.net.

MORE >>
Posted by Noah Subrin at 4/9/2007 8:31 PM | View Comments (0) | Add Comment | Trackbacks (0)
WF Starter Kit is available from Microsoft
The first of a set of starter kits for WF and WCF on the .NET Framework 3.0 has just been released. These starter kits are planned to help developers new to these technologies to get started on their first project faster.  The WF starter kit has just been released (April 6, 2007).

The WF Approvals Workflow starter kit is a Visual Studio 2005 project that demonstrates using Windows Workflow Foundation for simple task oriented workflow in an ASP.NET web application in a small code footprint. A workflow model is used to automate work order requests at a small example company. It includes three pre-defined roles which determine what user can perform the tasks of work orders creation, approval and monitoring. The starter kit may be modified for other workflow models to suit other small web based task management systems.

The starter kit is available for download here .

MORE >>
Posted by Noah Subrin at 4/8/2007 8:34 AM | View Comments (0) | Add Comment | Trackbacks (0)