Scott on Writing

Musings on technical writing...

A Video Presentation of Implementing a Layered Architecture Using Separate Class Library Projects

My Working with Data in ASP.NET 2.0 tutorial series looks at building a layered architecture and demonstrates working with data against that architecture. The tutorials implement the architecture as classes in the website's App_Code folder. Ideally, these layers would be implemented as separate Class Library Projects in order to aid with development, deployment, reusability, and code maintenance. But we chose to use the App_Code approach to lessen the learning curve and to make the articles more accessible (you cannot create Class Library projects in Visual Web Developer).

Anywho, a common question I've received over the months is, “Just how do I implement the architecture as separate Class Library projects?“ Part of the challenge is that implementing the DAL as a separate Class Library places the connection string settings in the project's Properties settings instead of reading them from the website's Web.config file.

I've been tinkering with the idea of using Camtasia to create demos / instructional material / additional content for the written word. It's been on my to-do list for several months, but today I decided to sink in 30 minutes and try my hand at it. In any event, what follows is my first attempt, and not surprisingly, it is pretty low quality. As such, I'm wondering what settings folks who create professional-looking demos using Camtasia use to make it look nicer. I recorded at about 900x800 pixels and had it converted into an AVI using the highest sound and video quality. Granted, the resulting AVI that Camtasia produced was very crisp. It was in uploading the video to Google Video that ended up causing the blurry output. And my microphone is nothing fancy.

So, in short, the following video is a fine example of getting what you pay for. Hope this helps someone! Any feedback on whether it's worth it to persue learning more about this medium to improve the quality of the presentation? Or should I stick to the written word?

 

posted on Monday, December 18, 2006 9:16 PM

Feedback

# re: A Video Presentation of Implementing a Layered Architecture Using Separate Class Library Projects 12/19/2006 12:41 AM Patrick

My previous post didnt show up..

A few tips:

1. Use large font when coding, this will make it easier to read.

2. Make sure the video is playable in full screen, this will also make it clearer to view.

3. Talk slower ;)

I think a combination of written text and video will be best. Written text is easier for reference and video is perfect to see how it all works in 'real life'.

Patrick

# re: A Video Presentation of Implementing a Layered Architecture Using Separate Class Library Projects 12/19/2006 7:49 AM Scott Mitchell

Thanks for the tips, Patrick. Yeah, I have been told more than once that I speak too fast. And good call on the font size, that's the first thing I do when giving a presentation or teaching in a classroom setting.

Regarding being playable in full screen, I assumed it would be playable, as I recorded it at a decent resolution and it looks fine when viewing the 30 MB AVI file outputted by Camtasia. When I uploaded to Google Video, it lost a lot of the quality/crispness.

# re: A Video Presentation of Implementing a Layered Architecture Using Separate Class Library Projects 12/19/2006 8:09 AM Dave

you could also look to host it on a higher quality video sharing site like divX's stage6.divx.com

# re: A Video Presentation of Implementing a Layered Architecture Using Separate Class Library Projects 12/19/2006 9:17 AM Mitch

Could I get a copy of the 30 MB avi? If you don't want to post here for bandwidth. I'd sure appreciate a copy to mitchh30@gmail.com
Following along with the voice would be ok... but I'm visual and watching what your doing will help me remember if I can see what your clicking.

# re: A Video Presentation of Implementing a Layered Architecture Using Separate Class Library Projects 12/19/2006 10:05 AM Wyatt Barnett

"Part of the challenge is that implementing the DAL as a separate Class Library places the connection string settings in the project's Properties settings instead of reading them from the website's Web.config file."

Really? You can access the ConnectionStrings[] collection from a DLL. It will in turn get the stuff from wherever the appropriate configuration stuff is. Like web.config for a website, or exename.exe.config for a command line client. There is no need to resort to odd strategies to deal with external libraries.

# re: A Video Presentation of Implementing a Layered Architecture Using Separate Class Library Projects 12/19/2006 12:14 PM Scott Mitchell

Yes, Wayne, you can access ConfigurationManager.ConnectionStrings from a Class Library. Problem is, the Typed DataSet autogenerates that connection code and doesn't provide good extension points to override the behavior via a partial class.

In the presentation, I show how to use ConfigurationManager.ConnectionStrings from the BLL class to accomplish this.

# re: A Video Presentation of Implementing a Layered Architecture Using Separate Class Library Projects 12/20/2006 2:33 AM Steve Clements

Hey Scott, I would like to see the webcast; have you got it online anywhere to download?

Thx
Steve

# re: A Video Presentation of Implementing a Layered Architecture Using Separate Class Library Projects 12/20/2006 5:58 AM Nathan Prather

Great Video Tutorial! I'm embarrassed to say that I couldn't figure out how to reference class library projects in VS 2005, in VS 2003 I would always right click on the solution icon in the solution explorer, and click add new project, etc... in VS 2005, the icon doesn’t show up until I add more than one project to it!

Also, that's cool for setting the connection string modifier to public. Thanks!
Nathan

# re: A Video Presentation of Implementing a Layered Architecture Using Separate Class Library Projects 12/20/2006 8:53 AM Sri

Can u provide the link for the Object Data source partial class you were talking about?.

Thanks

# re: A Video Presentation of Implementing a Layered Architecture Using Separate Class Library Projects 12/20/2006 12:39 PM Scott Mitchell

Sri, I talk about using a partial class in this blog entry:
http://scottonwriting.net/sowblog/posts/8982.aspx

hth

# re: A Video Presentation of Implementing a Layered Architecture Using Separate Class Library Projects 12/20/2006 4:28 PM Pure Krome

Scott - more video tutes of this stuff. Nothing beats live demo's of HOW to really do this stuff.

# re: A Video Presentation of Implementing a Layered Architecture Using Separate Class Library Projects 12/25/2006 9:38 PM Written word is better

Written word is better for learning

# re: A Video Presentation of Implementing a Layered Architecture Using Separate Class Library Projects 12/31/2006 3:29 PM Joey

Hi Scott,

I am moving from Classic ASP to .NET 2.0 and thanks much for the walk text based walk-throughs. Just finished the DAL section. In the notes, I was directed to your blog and see that you are starting to use Camtasia. I also use it to create visual tutorials (Adobe Firwworks & Dreamweaver). Just wanted to give you feedback on ,y expereince in using Camtasia...

I use 800x600. I have not tried anything higher. But as a user, I think I would prefer presentations in 800x600.

1. Dont post to Google or YouTube type sites. They compress/resize the heck out of the videos. Your best bet is to host them yourself. This will ensure that a 3rd party does not compress them any further.

2. Flash seems to be a good option me, however, since we are talking .NET and MS, WMV would be good option as well, especially if you plan to keep the videos self contained. I export my Camtasia AVIs to Flash, just my preference. An example of one of one of my videos... http://www.ultraweaver.com/videos/glasstext/

It is Flash exported from Camtasia and is 11:05 long and is 4.6MB is size. The quality is excellent, in my opinion.

3. I made the mistake if including mouse clicks on the audio... Not a good thing... Can be annoying. Not that you have the mouse clicks... just smething I have been told by users. I tend to click and fidget when speaking.

4. Your audio is a bit low. You can use Camtasia to ensure your audio is at correct levels as well. There is an indicator that will tell you if you are talking at appropriate levels.

Once again, thanks for you time and sharing your knowledge. Hope the feedback helps.

Hope this does not double post... I do not think my first one went through. : (

# re: A Video Presentation of Implementing a Layered Architecture Using Separate Class Library Projects 1/10/2007 12:08 PM ADI

Hello !
There is much much easier solution for the DAL to use the connectionstring from the Web.config:
JUST NAME THE CONNECTION STRING FROM THE WEB.CONFIG AS THE ONE FROM THE APP.CONFIG OF THE DAL...IT WORKS 100% :-), because the TableAdapters use somthig like "global:...." for the connection string, get it ?!

# re: A Video Presentation of Implementing a Layered Architecture Using Separate Class Library Projects 1/21/2007 10:23 AM John

I have seen other sites that do this as well.

http://www.technicalvideos.net is the one I have signed up for but there are a few others also. I would say that for me it is a lot simpler to sit back and watch the video tghen it is to read about the same thing..

Good stuff thanks

# My Working with Data Tutorials in Video Format 1/18/2008 11:48 AM Scott on Writing

# My Working with Data Tutorials in Video Format 1/18/2008 12:16 PM BusinessRx Reading List

One of the most frequent requests I receive regarding my Working with Data in ASP.NET tutorial series

# My Working with Data Tutorials in Video Format 1/18/2008 12:24 PM Community Blogs

One of the most frequent requests I receive regarding my Working with Data in ASP.NET tutorial series

# re: A Video Presentation of Implementing a Layered Architecture Using Separate Class Library Projects 1/18/2008 2:15 PM paul

Hey dont give up makin videos, i have't given up on tryin to learn asp.net 2.0

# My Working with Data Tutorials in Video Format 4/24/2008 1:10 PM .Net World

One of the most frequent requests I receive regarding my Working with Data in ASP.NET tutorial series

Title:  
Name:  
Url:
Protected by Clearscreen.SharpHIPEnter the code you see:
Comments   

Add To Your Reader

My Links

Archives

Post Categories

 

I am a Microsoft MVP for ASP.NET.
I am an ASPInsider.
<May 2008>
SMTWTFS
27282930123
45678910
11121314151617
18192021222324
25262728293031
1234567

Comment Stats

DayTotal% of Total
Sunday 1866.8%
Monday 37913.9%
Tuesday 45316.7%
Wednesday 50418.5%
Thursday 53519.7%
Friday 49418.2%
Saturday 1666.1%
Total 2717100.0%

Hour1Total% of Total
12:00 AM 652.4%
1:00 AM 682.5%
2:00 AM 622.3%
3:00 AM 742.7%
4:00 AM 572.1%
5:00 AM 1033.8%
6:00 AM 1084.0%
7:00 AM 1585.8%
8:00 AM 1716.3%
9:00 AM 1475.4%
10:00 AM 1716.3%
11:00 AM 1816.7%
12:00 PM 1886.9%
1:00 PM 1696.2%
2:00 PM 1605.9%
3:00 PM 1324.9%
4:00 PM 1073.9%
5:00 PM 923.4%
6:00 PM 913.3%
7:00 PM 963.5%
8:00 PM 833.1%
9:00 PM 782.9%
10:00 PM 792.9%
11:00 PM 772.8%
Total 2717100.0%

Comments by Blog Entry Date/Time

Day Entry MadeAvg.Total
Sunday 5.54144
Monday 5.22339
Tuesday 4.28419
Wednesday 7.67637
Thursday 6.90607
Friday 5.48411
Saturday 5.33160
Total 5.842717

Hour1 Entry MadeAvg.Total
12:00 AM 5.0035
1:00 AM 1.002
5:00 AM 0.000
7:00 AM 7.0035
8:00 AM 5.35107
9:00 AM 6.32278
10:00 AM 6.47246
11:00 AM 4.41181
12:00 PM 6.88330
1:00 PM 3.00111
2:00 PM 5.41222
3:00 PM 8.64285
4:00 PM 4.0589
5:00 PM 5.92154
6:00 PM 4.52113
7:00 PM 9.67174
8:00 PM 9.80147
9:00 PM 5.05111
10:00 PM 5.4265
11:00 PM 4.5732
Total 5.842717

Learn More About Comment Stats
1 - All times GMT -8...


Blog Stats

Favorite Web Sites

My Books

My MSDN Articles