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

# Store Procedure en BLL | hilpers 1/20/2009 10:55 AM Pingback/TrackBack

Store Procedure en BLL | hilpers

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

My Links

Ads Via DevMavens

Archives

Post Categories

 

I am a Microsoft MVP for ASP.NET.
I am an ASPInsider.
<February 2010>
SMTWTFS
31123456
78910111213
14151617181920
21222324252627
28123456
78910111213

Comment Stats

DayTotal% of Total
Sunday 2046.8%
Monday 42514.1%
Tuesday 51617.1%
Wednesday 55318.4%
Thursday 58019.2%
Friday 54718.2%
Saturday 1886.2%
Total 3013100.0%

Hour1Total% of Total
12:00 AM 772.6%
1:00 AM 812.7%
2:00 AM 682.3%
3:00 AM 822.7%
4:00 AM 692.3%
5:00 AM 1264.2%
6:00 AM 1183.9%
7:00 AM 1806.0%
8:00 AM 1926.4%
9:00 AM 1585.2%
10:00 AM 1876.2%
11:00 AM 1936.4%
12:00 PM 2016.7%
1:00 PM 1846.1%
2:00 PM 1695.6%
3:00 PM 1354.5%
4:00 PM 1153.8%
5:00 PM 1063.5%
6:00 PM 1013.4%
7:00 PM 1073.6%
8:00 PM 923.1%
9:00 PM 882.9%
10:00 PM 893.0%
11:00 PM 953.2%
Total 3013100.0%

Comments by Blog Entry Date/Time

Day Entry MadeAvg.Total
Sunday 4.94158
Monday 4.80384
Tuesday 4.08477
Wednesday 7.47680
Thursday 6.25675
Friday 5.02462
Saturday 4.78177
Total 5.413013

Hour1 Entry MadeAvg.Total
12:00 AM 5.2937
1:00 AM 1.002
5:00 AM 0.000
7:00 AM 3.8550
8:00 AM 3.72134
9:00 AM 6.02295
10:00 AM 5.63276
11:00 AM 4.20193
12:00 PM 6.14350
1:00 PM 3.17133
2:00 PM 5.00230
3:00 PM 7.62320
4:00 PM 4.00108
5:00 PM 6.04169
6:00 PM 4.64116
7:00 PM 8.95188
8:00 PM 8.63164
9:00 PM 5.00115
10:00 PM 6.31101
11:00 PM 4.5732
Total 5.413013

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


Blog Stats

Favorite Web Sites

My Books

My MSDN Articles