Build a Module in Minutes...
Transcript of Build a Module in Minutes...
![Page 1: Build a Module in Minutes 20130208willstrohl-presentations.s3.amazonaws.com/Presentations/20130209... · DotNetNuke ASP.NET.NET Internet Information Server Windows Server Web Content](https://reader031.fdocuments.us/reader031/viewer/2022030501/5aae3d387f8b9a59478bce19/html5/thumbnails/1.jpg)
BUILD A
DOTNETNUKE
MODULE IN
MINUTES
Module development for Beginners!
@WillStrohl | www.WillStrohl.com | [email protected]
![Page 2: Build a Module in Minutes 20130208willstrohl-presentations.s3.amazonaws.com/Presentations/20130209... · DotNetNuke ASP.NET.NET Internet Information Server Windows Server Web Content](https://reader031.fdocuments.us/reader031/viewer/2022030501/5aae3d387f8b9a59478bce19/html5/thumbnails/2.jpg)
WILL STROHL Sales Engineering Manager & Evangelist
Orlando, FL
@WillStrohl | www.WillStrohl.com | [email protected]
![Page 3: Build a Module in Minutes 20130208willstrohl-presentations.s3.amazonaws.com/Presentations/20130209... · DotNetNuke ASP.NET.NET Internet Information Server Windows Server Web Content](https://reader031.fdocuments.us/reader031/viewer/2022030501/5aae3d387f8b9a59478bce19/html5/thumbnails/3.jpg)
WILL STROHL Sales Engineering Manager & Evangelist
San Francisco, CA
@WillStrohl | www.WillStrohl.com | [email protected]
![Page 4: Build a Module in Minutes 20130208willstrohl-presentations.s3.amazonaws.com/Presentations/20130209... · DotNetNuke ASP.NET.NET Internet Information Server Windows Server Web Content](https://reader031.fdocuments.us/reader031/viewer/2022030501/5aae3d387f8b9a59478bce19/html5/thumbnails/4.jpg)
• Build vs. Buy
• Architecture
• Development Templates
• Module Walkthrough
• Development Tips (time permitting)
• Resources
AGENDA
![Page 5: Build a Module in Minutes 20130208willstrohl-presentations.s3.amazonaws.com/Presentations/20130209... · DotNetNuke ASP.NET.NET Internet Information Server Windows Server Web Content](https://reader031.fdocuments.us/reader031/viewer/2022030501/5aae3d387f8b9a59478bce19/html5/thumbnails/5.jpg)
![Page 6: Build a Module in Minutes 20130208willstrohl-presentations.s3.amazonaws.com/Presentations/20130209... · DotNetNuke ASP.NET.NET Internet Information Server Windows Server Web Content](https://reader031.fdocuments.us/reader031/viewer/2022030501/5aae3d387f8b9a59478bce19/html5/thumbnails/6.jpg)
IT’S JUST ASP.NET, PEOPLE!
![Page 7: Build a Module in Minutes 20130208willstrohl-presentations.s3.amazonaws.com/Presentations/20130209... · DotNetNuke ASP.NET.NET Internet Information Server Windows Server Web Content](https://reader031.fdocuments.us/reader031/viewer/2022030501/5aae3d387f8b9a59478bce19/html5/thumbnails/7.jpg)
• Store: http://store.dotnetnuke.com
• Forge: http://forge.dotnetnuke.com
– http://www.codeplex.com
– http://www.github.com
BUILD VS. BUY
![Page 8: Build a Module in Minutes 20130208willstrohl-presentations.s3.amazonaws.com/Presentations/20130209... · DotNetNuke ASP.NET.NET Internet Information Server Windows Server Web Content](https://reader031.fdocuments.us/reader031/viewer/2022030501/5aae3d387f8b9a59478bce19/html5/thumbnails/8.jpg)
DOTNETNUKE ARCHITECTURE
DotNetNukeDotNetNuke
ASP.NETASP.NET
.NET.NET
Internet Information ServerInternet Information Server
Windows ServerWindows Server
SQL
Server
![Page 9: Build a Module in Minutes 20130208willstrohl-presentations.s3.amazonaws.com/Presentations/20130209... · DotNetNuke ASP.NET.NET Internet Information Server Windows Server Web Content](https://reader031.fdocuments.us/reader031/viewer/2022030501/5aae3d387f8b9a59478bce19/html5/thumbnails/9.jpg)
DOTNETNUKE ARCHITECTURE
DotNetNuke
ASP.NETASP.NET
.NET.NET
Internet Information ServerInternet Information Server
Windows ServerWindows Server
Web Content Management System
Web Content Management System
Web Application FrameworkWeb Application Framework
Used by end-users
to create dynamic
and interactive
websites
Used by developers
to create
application
functionalitySQL
Server
![Page 10: Build a Module in Minutes 20130208willstrohl-presentations.s3.amazonaws.com/Presentations/20130209... · DotNetNuke ASP.NET.NET Internet Information Server Windows Server Web Content](https://reader031.fdocuments.us/reader031/viewer/2022030501/5aae3d387f8b9a59478bce19/html5/thumbnails/10.jpg)
WEB CONTENT MANAGEMENT SYSTEM
Extensions
Browser-based
administration;
unique content,
appearance
and membership
for each portal
Site 1Site 1 Site NSite N
ModulesModules SkinsSkins WidgetsWidgets LanguagesLanguages ProvidersProviders
Multi-tenant
Site Architecture
Content
Pages
Content
Pages
Users Users
Single DotNetNuke Installation
![Page 11: Build a Module in Minutes 20130208willstrohl-presentations.s3.amazonaws.com/Presentations/20130209... · DotNetNuke ASP.NET.NET Internet Information Server Windows Server Web Content](https://reader031.fdocuments.us/reader031/viewer/2022030501/5aae3d387f8b9a59478bce19/html5/thumbnails/11.jpg)
WEB APPLICATION FRAMEWORK
Core Services
(API-enabled)
Data Logging Scheduling Html Editor NavigationSearch
Index/StorePermissions
Caching Friendly URL Membership Roles Profiles Authentication
Plug-in Providers
Forms, LiveID,
Google,
Facebook,
Twitter, Active
Directory, Custom
Security, Syndication, Instrumentation, Localization …
RADControls for ASP.NET AJAX UI Components
Extensions
User Controls, VB/C#, CSS, HTML, JQuery, etc.
![Page 12: Build a Module in Minutes 20130208willstrohl-presentations.s3.amazonaws.com/Presentations/20130209... · DotNetNuke ASP.NET.NET Internet Information Server Windows Server Web Content](https://reader031.fdocuments.us/reader031/viewer/2022030501/5aae3d387f8b9a59478bce19/html5/thumbnails/12.jpg)
MODULE ARCHITECTURE
![Page 13: Build a Module in Minutes 20130208willstrohl-presentations.s3.amazonaws.com/Presentations/20130209... · DotNetNuke ASP.NET.NET Internet Information Server Windows Server Web Content](https://reader031.fdocuments.us/reader031/viewer/2022030501/5aae3d387f8b9a59478bce19/html5/thumbnails/13.jpg)
MODULE ARCHITECTURE
![Page 14: Build a Module in Minutes 20130208willstrohl-presentations.s3.amazonaws.com/Presentations/20130209... · DotNetNuke ASP.NET.NET Internet Information Server Windows Server Web Content](https://reader031.fdocuments.us/reader031/viewer/2022030501/5aae3d387f8b9a59478bce19/html5/thumbnails/14.jpg)
MODULE ARCHITECTURE
![Page 15: Build a Module in Minutes 20130208willstrohl-presentations.s3.amazonaws.com/Presentations/20130209... · DotNetNuke ASP.NET.NET Internet Information Server Windows Server Web Content](https://reader031.fdocuments.us/reader031/viewer/2022030501/5aae3d387f8b9a59478bce19/html5/thumbnails/15.jpg)
TRADITIONAL DNN MODULE ARCHITECTURE
Business Components
Abstract Data Provider
Concrete Data Provider
User Controls
User Interface
DotNetNuke
API
![Page 16: Build a Module in Minutes 20130208willstrohl-presentations.s3.amazonaws.com/Presentations/20130209... · DotNetNuke ASP.NET.NET Internet Information Server Windows Server Web Content](https://reader031.fdocuments.us/reader031/viewer/2022030501/5aae3d387f8b9a59478bce19/html5/thumbnails/16.jpg)
DNN MODULE ARCHITECTURE
Business Components
Abstract Data Provider
Concrete Data Provider
User Controls
User Interface
Other DB’sWeb Services
DAL2, REST, ORM, ADO.Net, etc.
![Page 17: Build a Module in Minutes 20130208willstrohl-presentations.s3.amazonaws.com/Presentations/20130209... · DotNetNuke ASP.NET.NET Internet Information Server Windows Server Web Content](https://reader031.fdocuments.us/reader031/viewer/2022030501/5aae3d387f8b9a59478bce19/html5/thumbnails/17.jpg)
TODAY’S DEMO
Business Components
Data Source
User Controls
User Interface
DAL2
DotNetNuke API
![Page 18: Build a Module in Minutes 20130208willstrohl-presentations.s3.amazonaws.com/Presentations/20130209... · DotNetNuke ASP.NET.NET Internet Information Server Windows Server Web Content](https://reader031.fdocuments.us/reader031/viewer/2022030501/5aae3d387f8b9a59478bce19/html5/thumbnails/18.jpg)
• Official Module Template
– http://bit.ly/dnnmoduletemplate
• Social Module Template
– http://bit.ly/dnnsocialtemplate
• Other Templates:
– Gooddogs - http://bit.ly/dnngooddogs
– Subodh - http://bit.ly/dnnsubodh
MODULE
DEVELOPMENT
TEMPLATES
![Page 19: Build a Module in Minutes 20130208willstrohl-presentations.s3.amazonaws.com/Presentations/20130209... · DotNetNuke ASP.NET.NET Internet Information Server Windows Server Web Content](https://reader031.fdocuments.us/reader031/viewer/2022030501/5aae3d387f8b9a59478bce19/html5/thumbnails/19.jpg)
DEMO
What does the code look like?
![Page 20: Build a Module in Minutes 20130208willstrohl-presentations.s3.amazonaws.com/Presentations/20130209... · DotNetNuke ASP.NET.NET Internet Information Server Windows Server Web Content](https://reader031.fdocuments.us/reader031/viewer/2022030501/5aae3d387f8b9a59478bce19/html5/thumbnails/20.jpg)
• Encode DataProvider script files as UTF-8
• Use existing modules as a starting point
• Use project templates as a starting point
• Use templates like CodeSmith
• Localize from version 01.00.00
• Use DNN controls and CSS classes
• Use EditUrl() and NavigateUrl()
• Look for DNN functionality FIRST
– object browser
– API help file
MODULE
DEVELOPMENT
TIPS
![Page 21: Build a Module in Minutes 20130208willstrohl-presentations.s3.amazonaws.com/Presentations/20130209... · DotNetNuke ASP.NET.NET Internet Information Server Windows Server Web Content](https://reader031.fdocuments.us/reader031/viewer/2022030501/5aae3d387f8b9a59478bce19/html5/thumbnails/21.jpg)
THANK YOU!
Additional Resources:
• Development Wiki Article: http://bit.ly/dnnmoduledev
• Visual Studio Template: http://bit.ly/dnnmoduletemplate
• Official DNN Blogs: http://blogs.dotnetnuke.com
• Official DNN Wiki: http://bit.ly/dnnwiki
• DAL2 Documentation: http://bit.ly/dnndal2
• PetaPoco Documentation: http://bit.ly/petapoco
@WillStrohl | www.WillStrohl.com | [email protected]