March PGHDOTNET Meeting - Bringing ALT.NET to the masses with ASP.NET MVC

 Tuesday, March 9th, 2010
 5:30 PM - 7:30 PM
 Microsoft Offices, 30 Isabella St., Pittsburgh, PA 15212
 Registration details: http://www.pghdotnet.com/201003.aspx

 

At this month's meeting we'll discuss not only the core ideas and concepts that make ALT.NET what it is, but we'll also discuss how you can apply some of these very same concepts to your own day to day development using frameworks like ASP.NET MVC.  Some concepts we'll be discussing our Test-Driven Development, Inversion of Control, and the SOLID principles.

Scott Guthrie announced ASP.NET MVC to the world at the first ALT.NET Conference in October of 2007.  Since then, 
this new framework has made impressive inroads into the mainstream .NET community.  The flexibility inherent in this 
lightweight framework has made many of the ideas which first inspired the ALT.NET mindset achievable in every day .NET development.

 

Speakers

Jeremy Jarrell (ALT.NET), Matt Otto (ALT.NET), Craig E. Oaks (Pgh.NET)

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Feb PSSUG - SQL Server and .NET CLR Integration

This month, Joe Smith will present on SQL Server and .NET Common Language Runtime Integration and Programming.  With the release of SQL Server 2005, and subsequently SQL Server 2008, the ability to develop using the .Net Runtime has become an intrinsic capability available to SQL developers.  

This talk will explore:

·         Basics of the .Net architecture and its integration with SQL Server

·         Creation of artifacts built on .Net for use in SQL Server (user defined functions, stored procedures, etc.)

·         Security and Access (how the integration

·         Deployment and use of .Net artifacts to SQL Server

·         Best Practices in utilizing the .Net integration, one size does not fit all.

 

Joe is a Solutions Architecture Consultant with Dell Computer, Inc.  He has numerous years of consulting experience working with customers across the landscape of small, medium and large enterprises associated with varying industries.  His past focus was primarily with middle tier and backend .Net development.  Recent efforts with Dell focus on solutions built using .Net, SQL Server on or associated with SharePoint.  Prior to joining Dell, Joe worked for Microsoft Services in a similar role with a focus on both Enterprise and application integration and .Net technologies such as Windows Communication Foundation and Windows Workflow.

 

Date: Wednesday, February 24

Time:  12:00 PM – 2:00 p.m.

Venue: Pittsburgh Technology Council, 2000 Technology Drive, Pittsburgh, PA 15219

Cost: No charge, but you must RSVP. Space is limited!

RSVP: Online

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Feburary PGHDOTNET Meeting - Improving ASP.NET Web Application Performance and Creating Web UI Tests

Update: Cancelled due to snow!  Next meeting in March. 

Tuesday, February 9th, 2010

5:30 PM - 7:30 PM

Microsoft Offices, 30 Isabella St., Pittsburgh, PA 15212

Registration details: http://www.pghdotnet.com/201002.aspx (we have a new online registration form!)

Join us on February 9th for two sessions as David Hoerster first describes how you can quickly create web UI unit tests using Visual Studio 2010's new CodedUI Tests feature.  Afterwards, we'll talk about how to improve the overall performance of your ASP.NET web sites by going over a few tips and tricks.  This is a session that will be beneficial to developers, testers and architects alike!

Session 1: Creating Automated Web Unit Tests Using Visual Studio 2010's Coded UI Tests


Quickly create UI unit tests using Visual Studio 2010's new feature called CodedUI Tests.  They're very easy to create, give the developer/tester a lot of control, and allow you to data drive your tests.  This feature is great for developers and testers alike.

Session 2: Improving the Performance of Your ASP.NET Web Sites


There's a lot of tips and tricks to improve the performance of your web sites, and we'll take a tour of a few of them in this session.  We'll look at: CSS Sprites, Using WCF Services for AJAX Calls, Tools for Minifying Your JavaScript and CSS Files (and how to integrate them into a build tool), and a few more!

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Granting Table and View Permissions in SQL Server 2005/2008

Granting permissions to users (or roles) in SQL Server can be a pain, especially when there is a large number of tables and user/roles involved.  Faced with this task, I went looking for a script to do so, and found it at SQL Server 2005: Easily Grant Select to All Tables and/or Views in a Database.  The script is pretty good, but I made a few modifications to replace the cursor, use SQL2K5 system views and limit by schema.  This is an easy way to grant permissions for a database role to a specific schema.

Two system views are mentioned--sys.database_principals, which provides a list of users and roles in a database, and sys.schemas, which lists the schemas and the schema IDs for the database.  I'm not a big fan of cursors, I prefer to use a while loop.  I feel while loops are easier to write and perform better.  On a small task like this, the performance difference is negligable, but the ease of coding is nice.

Here is the query I ended up with:

/*
 @login can be a specific user, or a role; can be obtained by querying sys.database_principals
 @schema_id = query sys.schemas for list of schema ids
*/
declare @login varchar(50), @schema_id int
set @login = 'username'
set @schema_id = 1

declare @objects table (objid int identity(1,1), cmd varchar(500))
insert into @objects
select 'grant select on ' + name + ' to ' + @login
from sys.tables
where schema_id = @schema_id

select * From @objects

declare @oldid int, @curid int, @maxid int, @cmd varchar(500)
set @oldid = 0
select @maxid = count(objid) from @objects

while @oldid < @maxid
begin
 select top 1 @curid = objid,
 @cmd = cmd
 from @objects
 where objid>@oldid
 order by objid
 
 execute (@cmd)
 select @cmd 
 set @oldid = @curid
end

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Free Ebooks from Manning until 2010

I like ebooks, and I especially like free ebooks.  You can sign up for Manning's Countdown to 2010 at http://www.manning.com/countdown2010/.

Here's their offer:

Daily free ebook giveaway! Crazy discounts!

At Manning, we're inviting you to welcome 2010 with a little fun and games! Register for Countdown to 2010 and you'll get:

  • A new offer each day good for one day only
  • A chance to win one of two free ebooks in the daily drawing
  • A daily email alert with a coupon code for the special DEAL OF THE DAY

It all starts tomorrow, December 1. To get you started on the right foot, we'll send you a coupon code good for $15 off any purchase at Manning when you sign up.

Currently rated 5.0 by 1 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Pgh.NET: Dissecting DevEvents.com - A Look at a Real World .NET MVC Implementation

Tuesday, December 8 | 5:30 - 7:30 p.m.
This event is free, please RSVP.

Join us for our next PGHDOTNET meeting on December 8, 2009, at 5:30 p.m. at the Microsoft Offices on the North Shore. Steve Andrews will present on Dissecting DevEvents.com: A Look at a Real World .NET MVC Implementation.

The ASP.NET MVC Framework provides a powerful Model View Controller (MVC) approach to building web applications, and provides separation of concerns, increased testability, control over HTML output, and intuitive URLs. We will start by looking at building a model framework with LINQ to SQL, including validation and model binding. Then, we'll explore a custom generics-based repository and services implementation. Finally, we'll tie it all together with a look at Views and jQuery.

Sponsored by:
DiscountASP.NET

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Microsoft Donates the ASP.NET Ajax Library Project to the CodePlex Foundation

November 18, 2009. CodePlex Foundation Announces Creation of First Gallery, Acceptance of First Project
ASP.NET Open Source Gallery, ASP.NET Ajax Library Project first proofs of Foundation model

The CodePlex Foundation today announced the creation of the first Foundation project gallery, the ASP.NET Open Source Gallery, and the acceptance of the first project into that gallery, the ASP.NET Ajax Library project. The gallery and project were evaluated for acceptance using the Foundation's Project Acceptance and Operation Guidelines, first published October 21, 2009. The gallery and project are supported by Microsoft, the Foundation's founding sponsor.

"Bringing the first project gallery and project into the CodePlex Foundation shows significant progress against our 100 day goals," said Sam Ramji, Interim President, CodePlex Foundation. "The ASP.NET Ajax Library project is important for its great value to both the open source and commercial software worlds, and the Foundation is the best forum in which to shepherd its future development."

Gallery and Projects

The ASP.NET Ajax Library consolidates ASP.NET Ajax and the Ajax Control Toolkit into a single open source project. The Ajax Control Toolkit and Ajax Libraries, components of many web development strategies, make it easy for developers to use the Ajax programming model in their websites and web applications.

The ASP.NET Ajax Library project will be released under a BSD license and can be used with many technologies, including, but not limited to ASP.NET, PHP and Ruby on Rails. Future development of the project will be done within the ASP.NET Open Source Gallery under the aegis of the CodePlex Foundation.

The CodePlex Foundation Gallery Model

The CodePlex Foundation in October announced an innovative gallery sponsorship model that uses museums as a design pattern. The organizational structure divides the Foundation into galleries - collections of thematically related projects - which benefit from a common set of services provided by the Foundation.

Galleries may be sponsored by a third-party organization, e.g. a commercial software company, or run by the Foundation. Galleries will rely on Foundation staff and volunteers to provide a set of support services, including administration, security, best practices and marketing.

About the CodePlex Foundation

The CodePlex Foundation is a not-for-profit foundation created as a forum in which open source communities and the software development community can come together with the shared goal of increasing participation in open source community projects. For more information about the CodePlex Foundation contact info@codeplex.org.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Google Apps Email and Droid Phones

My dad bought a Motorola Droid, and has a custom domain email account hosted by Google Apps.  In order to activate the Droid, you must have a GMail account (much the same as you need an iTunes account to activate an iPhone).  Even though Google Apps email is hosted by GMail, a Google Apps email account can not be used to activate an Android phone—you will still need a GMail account.  The Verizon rep had to create a dummy account for my dad just to get the phone turned on.

I did send an email to Verizon’s tech support, and here was the reply:

An email hosted by Google apps for domain would not be able to take the place of a gmail account.

So there you have it, straight from Verizon (kudos to VZW tech support for the less than 18 hour answer via both email and a voice mail).  After your Android phone is activated, you can use the Mail program to use your Google Apps email.  IMAP seems to be the recommended method, since Android is mentioned specifically in the IMAP setup, but POP3 would apparently work, too.

Here are setup instructions for the two protocols.

IMAP: https://mail.google.com/support/bin/answer.py?answer=114408

POP3: http://mail.google.com/support/bin/answer.py?answer=13287

Currently rated 3.0 by 2 people

  • Currently 3/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

New Stuff in Silverlight 3

At the recent MSDN Mid-Atlantic Roadshow, Dani Diaz had a great talk on building connected Silverlight Apps.

Sample apps are found at http://code.msdn.microsoft.com/silverlightws.

Performance improvements in Silverlight 3

A binary message encoder has been added that converts text into a smaller binary format.  This is seen in the XBox Live Friends sample app.

Debugging

Since Silverlight runs in the browser, it it limited by what the browser stack allows to pass through.  Only data with a return code of 200 OK is displayed in the browser.  Other errors are displayed with a generic message, making troubleshooting difficult.  A new FaultException has been added, which allows you to wrap the error message in a valid return XML.  By enabling the ClientHttpStack, you can display debugging messages when there are issues.

Securing Services

In SL3, WS-Security credentials can be passed in the message header.  Make sure to use HTTPS and don’t enable cross-domain logins.

Duplex Services

New extensions have been added for "push” data, where the server can send data to the client without a request from the client.  lso, an AJAX library has been released for these same duplex services.

New ClientHTTP Stack

An updated WCF REST toolkit for searching public APIs.  One feature of the toolkit adds a menu item where POCO can be created directly from XML in the clipboard (this used to involve several steps and a command line utility).  The POCO can be used to directly databind to controls.  The toolkit is found at http://msdn.microsoft.com/en-us/netframework/cc950529.aspx.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Installing PHP on Windows 7/IIS 7 with Windows Platform Installer

Download the Web Platform Installer from http://www.microsoft.com/web/Downloads/platform.aspx.  Must do this when connected to the Internet, since the installers download the latest components from the web.  You also need to install PHP before you install the PHP-based applications, too.

After you download the small installer, run it, and you’ll see an Open File warning.  Click Run to continue, and the installation will begin.

image 

image

At this point, you’ll receive a UAC warning.  Allow the WPI to install itself.

image

It was at this point I received an error on my first try (see below).  Upon retrying the installation, it worked.

Once the WPI is installed, it will update itself with the latest packages and components.  You’ll receive another UAC, and then you’ll see this window, where you can add components or apps.

image

To install PHP, select the Web Platform tab, then under “Frameworks and Runtimes” click Customize, then choose PHP from the list.

image

Click Install, and review the list of components that will be installed.

image

Click I Accept, and installation will begin.

image

After a few minutes, you’ll have PHP installed on your system.

image

Configuring Expression Web 3 for PHP

The PHP components are installed in c:\program files\php.  If you use Expression Web 3, you can configure PHP under Tools >> Application Options >> General, then browsing to the php-cgi.exe.

image

Testing the PHP Installation

To test your PHP installation, open the IIS Management Console and create a new application.  Inside of this application, add a file named test.php and with the following code in it:

<?php
Print "Hello, World!";
?>

Load this file in your web browser, and if you see the message, you’re set to go!

image 

Installation Error

The first time I ran through the installation, I received the following error:

The Web Platform Installer  could not start.  Please report the following error on the Web Platform Installer forum.  http://forums.iis.net/1155.aspx

I checked out the Application Log, and that was no help:

Product: Microsoft Web Platform Installer 2.0 RC -- Installation failed.

Before I went to the IIS forum, I tried to recreate the issue by running the installer again, and this time it worked.  So if you get this error, wait a moment and try it again.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Be cautious reading “Be cautious upgrading to Windows 7” articles

I came across an article today, “Be cautious upgrading to Windows 7”, written by Troy Wolverton at the San Jose Mercury News,and distributed via wire service.  Although the author claims to have upgraded to Windows 7 twice, there are some serious inaccuracies in the article.  I actually did four installs (two “clean”, two upgrades), all in the name of science.

If you’re one of the millions of PC owners still running Windows XP, your computer may not be powerful enough to run the new software. Worse yet, you have a tedious and long upgrade process ahead of you, essentially requiring you to erase everything on your current hard drive and reinstall it.

If you are upgrading from XP, the process is even more time-consuming. Microsoft requires XP users to do a "clean" installation. That means the installation disc will wipe out everything on your hard drive, including not only the old operating system, but all of your programs and personal data, including documents, songs, photos and bookmarks.

This is absolutely wrong—you do not have to format your hard drive when upgrading from XP to Windows 7.  If you perform a Custom Install, the Windows 7 installer will put all your old Windows XP, program files and documents and settings in a folder named windows.old.  Windows 7 will install in c:\windows, just like XP was before.  Once this installation is done, you can then move your documents and settings from windows.old to wherever you want them in your new Users folder.  Your programs will not operate, they will need to be reinstalled under Windows 7.  Once you have your programs reinstalled and running, and your documents moved around, you can delete windows.old and free up some space.

This is like a “fresh install”, in that you get a completely fresh operating system, but without having to destroy your data.  It’s a pretty good option.

You can download a program called "Windows Easy Transfer" from Microsoft that will simplify the backup part of the process. The program collects your user data and allows you to transfer it to an external hard drive or USB drive or to another computer on your network.

Once you finish installing Windows 7, you can use "Easy Transfer," which is built into the new operating system, to move your personal files back to your computer and put them into their appropriate places.

Easy Transfer can be used to migrate settings for an in-place upgrade, but it’s really meant for moving stuff to a new computer.  Easy Transfer packages up all your Documents and Settings from your old PC into a single file, and then restores your settings on the new PC.  You’ll have your backgrounds, documents, cookies, favorites, email contacts and messages, etc. on the new PC, just like the old one.  Novice users may prefer this route, power users might like the windows.old method.

But there’s no simple way to reinstall all your programs. Indeed, if you’re like me, you may be at a loss trying to find all your old discs_or you may have software that you downloaded online that may be difficult to reinstall without repurchasing it first.

Ahh, but there is!  See my review of Laplink’s Windows 7 Upgrade Assistant.

Back up your stuff: It’s a good idea anytime you upgrade your OS; it’s mandatory if you’re running XP.

Even better, get an external hard drive and image your machine.  Get Easeus ToDo Backup, clone your current hard drive, then install Windows 7.  If the install fails for some reason, or you want to go back to your old OS, you can restore your PC from the clone, and you’re back in business just as before.

Currently rated 5.0 by 1 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Installing IIS 7 on Windows 7 for .NET Development

We’ll set up the basic features for developing in ASP.NET.  Most websites should be up and running with no problems.

To start the installation, go to Start >> Control Panel >> Programs.  Under Programs and Features, click “Turn Windows features on or off”.

image

The Windows Features window will open, and you’ll see Internet Information Services listed.  For .NET Development, installation is not as simple as just checking the top level checkbox.

image

Expand Internet Information Services >> Web Management Tools.  We need a way to manage our server, and in Windows 7, we use the IIS Management Console.  After you expand Web Management Tools, choose IIS Management Console.

image

Now expand Application Development Features, and select .NET Extensibility and ASP.NETISAPI Extensions and ISAPI Filters will automatically be selected when you choose ASP.NET.

image

Looking down the list a little, we see Common HTTP Features has something selected.  Expanding this node shows Default Document is chosen—it’s automatically selected when you chose ASP.NET above.  If your site includes HTML pages or other static content, you should also choose Static Content.  Most sites have some form of static content, so it’s a good idea to check this option.

image

Expand Health and Diagnostics, there are a couple options we need—HTTP Logging and Tracing.  Some of the other features are nifty, but setting them up is beyond the scope of this post.

image

Finally, you’ll see Security also has an option chosen—Request Filtering is automatically selected when you chose ASP.NET above.  For our local development machines, you need to select Windows Authentication, it’s necessary for debugging.

image

That’s all we need for basic ASP.NET development.  Click OK, and Windows setup will install IIS and the features we selected.  They’re not kidding about “several minutes”.  Be patient.  When the installer is done, it just disappears.

image

You can test your installation by navigating to http://localhost/, and if you see the IIS 7 splash screen, you’re good to go.

image

You’ll find the IIS Management Console in the same place as before, under Computer Management.  If this is your first experience with the IIS 7 console, it’s going to be a little mind boggling.  Everything is different.  To learn more about IIS 7 in depth, check out http://www.iis.net/.  In addition to the tutorials, there are loads of modules to extend the functionality of IIS.

Currently rated 5.0 by 2 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

McHappy Day 2009 – Support Children in Need

November 20th will mark an important day for children around the world.  On that day, McDonald’s restaurants, joining more than 30,000 Golden Arches Locations around the world, is celebrating the 7th Annual McHappy Day fundraiser.  Since 2002, it has raised $150 million for RMHC and children’s charities around the world.  McDonald’s Restaurants across the country will donate $1.00 from the sale of every breakfast and beef sandwich Extra Value Meal to Ronald McDonald House Charities.

Through much of the month, customers can also support RMHC through “Give a Hand” an in-restaurant program that exchanges a $l.00 donation to the charity for the opportunity to autograph and hang a paper hand in McDonalds.

On November 20th, won’t you do your part by stopping by your local McDonald’s neighborhood restaurant with your family and purchase either breakfast meals or a beef sandwich extra value meals to support the Ronald McDonald House Charities? Also, stop by during the month of November and give a dollar for “Give A Hand” and hang your child’s autograph in the restaurant.   What better way to help children in need by supporting the RMHC.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Misfits Pumpkin Lightshow

This is my buddy Matt’s Haloween creation:

My music synced pumpkin created on 10-23-09 at HackPittsburgh (www.hackpittsburgh.org). The animation was created using an Arduino microcontroller (www.arduino.cc), a candle led from a craft store led tea light. and a blinkm (http://thingm.com/products/blinkm). The music synchronization was done with custom software written in VB.Net.

Direct Link: http://www.youtube.com/watch?v=hZt1nLhL7Bs

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

MSDN Roadshow and Nerd Dinner

The MSDN Roadshow has been rescheduled for 11/12/2009, sign up at http://www.msdnevents.com/.

Silverlight Data Access and Windows 7 for Developers

Join Microsoft Evangelists Dani Diaz, G. Andrew Duthie, and David Isbitski as they tour the Mid Atlantic this Fall presenting an afternoon packed full of cutting edge tips and techniques for developers and architects.

With two longer sessions, we’ll dig deeper into data access in Silverlight, and check out the most important features in Windows 7 for Developers.

Free admission and a chance to score some surprise giveaways to boot!

Reservations are required, and seating is limited. Register today to reserve your seat.

Agenda:

Data Access and Network Options in Silverlight

Wondering about the most effective way of getting data into your Silverlight application? Trying to sort out the different options available? Then this session is for you. We’ll open up with an overview of the different networking and data access techniques available in Silverlight. Then, we’ll dive into examples of using each of these technologies, and along the way we’ll also examine the role these technologies play in other .NET applications. Finally, we’ll show you the Sample Data feature in Expression Blend 3, and the best method for transitioning from Sample Data to production data in your applications.

200 Level | 1 hour 45 mins

What’s new in Windows 7 for Developers

Windows 7 has many improvements in both performance and user interface features that you should be taking advantage of when developing your applications. In this session we’ll cover an overview of coding those features users will expect such as Libraries, the new Taskbar, and Jump Lists. Next up is taking advantage of several performance improvements like Trigger Start services and the new Windows Troubleshooter. Finally, we’ll show you how to add several of the new interface options you won’t want to miss including Multi-Touch and the Ribbon Menu.

200 Level | 1 hour 45 mins

This goodness to be followed by a nerd dinner, RSVP at http://www.nerddinner.com/1206.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: