250 likes | 449 Views
SharePoint for ASP.NET Developers. Jeremy Sublett, jeremysublett@composablesystems.net SharePoint Server MVP, MCT, MCSD, MCTS Composable Systems, LLC. Agenda. ASP.NET Challenges What can SharePoint do: Internally & Externally SharePoint as a platform for development Web parts
E N D
SharePoint for ASP.NET Developers Jeremy Sublett, jeremysublett@composablesystems.net SharePoint Server MVP, MCT, MCSD, MCTS Composable Systems, LLC
Agenda • ASP.NET Challenges • What can SharePoint do: Internally & Externally • SharePoint as a platform for development • Web parts • User Controls • Application Pages • Workflow • Tools and Techniques
Typical ASP.NET Architecture Insert Page ASP.NET Website Update Page Delete Page Business Logic Login Page SQL Database
Typical ASP.NET Architecture ASP.NET Website ASP.NET Website ASP.NET Website Business Logic Business Logic Business Logic SQL Database SQL Database SQL Database
ASP.NET Dev Pains • Database design setup • Common pattern for tables and web pages to display that data • Solution repeatability is difficult • Add-ons difficult to implement without touching base code • Consistency – different development practices • Security differences
SharePoint Versions • WSS 3.0 • Lists / Libraries • User Interface • Security / Administrative Infrastructure • Workflow Infrastructure • MOSS 2007 = (WSS 3.0 + More Functionality) • Enhanced search capabilities • Publishing infrastructure for external sites (CMS) • Internal Collaboration Portal • Additional Workflows
The Product Microsoft Office SharePoint Server (Enterprise) Microsoft Office SharePoint Server (Standard) Windows SharePoint Services
Features: WSS • The traditional look and feel of SharePoint • Lists & Libraries • The ability to support workflows • Foundation for all other versions MOSS (Enterprise) MOSS (Standard) WSS
Features: MOSS Standard • Numerous workflows • Intranet site template • Internet site template • Search • User profiles & Audiencing • More web parts MOSS (Enterprise) MOSS (Standard) WSS
Features: MOSS Enterprise • InfoPath Forms Services • Excel Services • Business Data Catalog MOSS (Enterprise) MOSS (Standard) WSS
SharePoint Architecture Site Collection A Site A Site B Site C Site Collection B Site Y Site Collection C Site X SharePoint Configuration Database SharePoint Object Model Logical Data structures for Lists and Document Libraries SharePoint Content Database SharePoint Content Database …
Exposing SharePoint • Internet – public-facing websites • Intranet – internal collaboration • Extranet – providing secure access to resources
Public Site Example • WSS • All data stored in lists • End-user editable capabilities via Internet Explorer • eCommerce
Public Site Example • MOSS • InfoPath Forms services • Workflow • Custom web parts for: • List Searching • AJAX Ad Rotation • UI flow • Admin Dashboard
Public Site Example • MOSS • Custom UI with Flash • FBA Login • User registration validated against external SQL DB • Custom ASP.NET User Controls
Why Develop on SharePoint? • Based entirely on ASP.NET 2.0 (supports 3.5) • Existing UI to start with • Provisioning • Security • Data storage abstraction • Compartmentalized “features” and functionality • Workflow infrastructure
User Interface Search Nav Admin Content
Provisioning: Building Blocks New Site ... XML New Site ... XML New List ... Custom Code XML DLL Installed on Server Created “Fresh” for each time
Data Storage: The List Site Collection Site Site Site Site List List List List
SharePoint as a Dev Platform • User Controls (.ascx) • Application Pages (.aspx) • Master Pages (.master) • Web Parts (.webpart) • Workflows (.NET 3.0 - Workflow Foundation) • SharePoint Designer and other customizations • Dynamic creation of Office Files (.docx, .xlsx) • Site Definitions
Steps Into SharePoint Dev • Setup Environment • Server 2003/2008 or Vista with Bamboo add-in • MOSS or WSS • Visual Studio 2005/2008 • Build • User Controls • Application Pages • Web Parts • Based on ASP.NET 2.0 • Much more…
Tools & Techniques • Visual Studio 2005/2008 • SharePoint Extensions for Visual Studio • STSDEV & other community projects (Codeplex) • SharePoint Designer for quick prototyping • Customize your .aspx pages in a “Pages” document library
SharePoint Pains • Code & Run not always available • Lots of moving parts – start with the basics • Documentation – growing • Multiple Developer Tools • SharePoint is a HUGE product
Jeremy Sublett jsublett@composablesystems.net 502 216 1091 Questions