Windows SharePoint Services 3.0 Michal Neuwirth ISV Technical Readiness DPE Microsoft Czech Republic
Obsah Architektura WSS 3.0 WSS WebParts Práce s obsahem WSS Object Model
Novinky ve WSS 3.0 Integrace s ASP.NET 2.0 (Master pages, Webparts) Recycle Bin Integrace s WWF Podpora RSS Feedu Item-level security Content types Synchronní události Features framework
MOSS 2007 WSS 3.0 Windows Server Instructor Notes First, point out that WSS leverages features from the underlying OS, from SQL Server and from ASP.NET 2.0. Also discuss certain features that were added to ASP.NET 2.0 (Master Pages, Web Parts, Navigation) that benefit WSS "V3". Next, describe the core purpose of WSS is to act as a scalable site provisioning engine. WSS provides the services in the purple boxes so developers do not have to create that code themselves when creating site-oriented and workspace-oriented applications. Finally, point out that WSS provides a development platform. The Office Server team has used this platform to build Office Server components and companies and developers can use WSS to build their own custom solutions. Windows Server
Integrace s ASP.NET WSS v2 WSS v3 ISAPI filtr pro IIS Požadavek vykonán před inicializací ASP.NET 1.1 kontextu WSS v3 ASP.NET 2.0 HttpHandler Inicializace WSS začíná až po kompletním ověření v ASP.NET 2.0 Instructor Notes Discuss how the integration between WSS V2 and ASP.NET 1.1 was less-than-desirable because WSS was added to the IIS request processing architecture as an ISAPI filter. That means that WSS stared executing before the request had been initialized with ASP.NET context. WSS V3 has much better integration because it is configured in ASP.NET 2.0 as a HttpHandler. Therefore, requests always enter the ASP.NET runtime and are completely authenticated and initialized with ASP.NET context before being sent off to WSS.
WSS databáze Data i konfigurace uložena v SQL Serveru Základ pro Webové farmy Konfigurace uložena v konfigurační databázi Obsah a vlastní úpravy uloženy v databázi obsahu Instructor Notes This slides points out architectural details that remain the same between WSS V2 and WSS V3. The scalability of WSS is based on a model involving stateless front-end Web servers. To reach this goal all content including list items, documents and site customization are stored in a SQL Server database. You can use either SQL Server 2000, SQL Server 2005 or MSDE. There is one configuration database for the farm that contains information about each site and each server that participates in the farm. All site content is stored in one or more content databases. There is usually one content database for each IIS Web site (aka Web Application) that is extended to use WSS.
Základní členění WSS Farma WebAplikace (Virtual Server) Nejvyšší úroveň pro nasazení WSS Instalace jednoho a více Web serverů a back-end serverů Každá farma má pouze jednu konfigurační DB WebAplikace (Virtual Server) IIS Web site rozšířený o WSS SPVirtualServer Site Collection (Site) Kontejner pro další dílčí WSS Site Obsahuje top-level site Sdílí nastavení Uloženo v jedné kontextové DB SPSite Site (Web) Kolekce stránek a dalších dílčích kolekcí Používá stejnou kontextovou DB jako rodič SPWeb Instructor Notes The Farm is the highest-level scope for a WSS deployment. It represents an installation of one of more Web servers and back-end servers and has exactly one configuration database associated with it. A Web Application is an IIS Web site extended to use WSS. In WSS V2, the term "Virtual Server" was used to mean the same thing. This is important because the object model provides the SPVirtualServer class to program against a Web application. A Web application is capable of hosting 10,000s of site collections. A Site Collection is a container for WSS sites that must exist within a specific content database. A site collection always contains a top-level site and can optionally contain child site below. The site collection is a unit of ownership, secure-ability and recoverability. Back in the WSS V1 days, site collections were called "sites" and consequently the object model provides an SPSite object to program against site collections. A site is a container that holds pages and content and it must exist within a specific site collection. Back in the WSS V1 days, sites were called "webs" and consequently the object model provides an SPWeb object to program against sites.
Práce s obsahem Seznamy (lists) Knihovna souborů (document libraries) Obsah uložen po položkách Obsahuje formulář pro vkládání, různé pohledy na položky, …. Knihovna souborů (document libraries) Určeno pro sdílení souborů Podporuje operace check-in/check-out, verzování dokumentů,… Web part Základní stavební prvky WSS Vše je webpart – seznamy, knihovny souborů, … Základní množina je součástí WSS Lze naprogramovat vlastní pomocí ASP.NET 2.0 Instructor Notes Up to this point, the lecture has discussed the nuts and bolts of WSS architecture. Now it's time to turn the focus to designing WSS sites. You should begin by motivating that each WSS site is s storage container whose structure should be designed to hold the content required to solve a particular business problem. You design the structure of a site by creating new lists and document libraries. One of the core value propositions of the WSS development platform over ASP.NET is that it provides a UI out-of-the box for each list and document library you create. Unlike ASP.NET development, there's no need to create .ASPX pages for viewing, inserting and editing data. Finally, mention that WSS provides a built-in authorization layer along with an administrative UI for configuring authorization. Once you create list and document libraries, it is very easy to control who has access to them.
Typy webových stránek Stránky v rámci site Aplikační stránky Na disku uložena výchozí nezměněná verze v .aspx souboru Upravená verze je uložena v kontextové databázi Aplikační stránky settings.aspx, …. Uloženo na disku v adresáři _layouts Stejné na úrovni celé farmy Nelze měnit Instructor Notes This slide returns to an architectural topic of how pages are stored and retrieved for a WSS site. All pages in a WSS are initially retrieved from a .aspx page definition file that lives on the file system of the front-end Web server. However, these pages should be broken out into two different categories: site pages and application pages. While site pages are initially stored in an uncustomized format and retrieve from the front end Web server, they support customization. When a site page is customized with a tool such as the SharePoint Designer, the customized .aspx file is written into the content database. Application pages are stored in the _layouts directory (e.g. setting.aspx) and are accessible to all WSS sites within the farm. They do not support customization and are never stored in the content database.
_layouts adresář Virtuální adresář pro všechny WSS Web aplikace C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\LAYOUTS Poskytuje standardní relativní URL pro všechny sites /_layouts/SiteSettings.aspx Lze použít i pro vlastní aplikační stránky /_layouts/images Uloženy standardní WSS obrázky Lze použít pro vlastní obrázky Instructor Notes During the process of extending an IIS Web site into a SharePoint Web application, WSS creates a special virtual directory off the root of the Web application with a path of _layouts. This virtual directory point to a shared directory of WSS system files at the path shown on the slide above. One of the most important aspect of the _layout directory to convey to students is that resources such as pages, images and CCS files are accessible to an WSS site in the farm using a consistent relative URL. For example, the site setting page is accessible through the relative URL _layouts\setting.aspx. That means the following URL all hit the same application page. http://LitwareServer/_layouts/settings.aspx http://LitwareServer/sites/Sales/_layouts/settings.aspx http://LitwareServer/sites/Sales/NorthDivision/_layouts/settings.aspx
Master Pages Master Pages jsou součástí ASP.NET 2.0 Nabízí efektivní řešení pro vytváření vzorů stránek Master page definuje místa pro vkládaní obsahu Content page umísťuje obsah do vyhrazených míst v master page WSS využívá princip master pages pro změnu stránek Master stránky lze editovat např. pomocí nástroje SharePoint Site Designer Každá site stránka obsahuje odkaz na master stránku Každý WSS site obsahuje Master Page Gallery včetně default.master Instructor Notes Neither ASP.NET 1.1 nor WSS V2 supported a satisfying approach for creating page templates. In ASP.NET, that typically forced developers to create common layouts with User Controls. In WSS V2, it resulted in lots of copying-and-pasting HTML across .ASPX page definition files. ASP.NET 2.0 introduced a very welcome page templating technique with Master Pages. A master page provides a common page layout across content pages. In addition to defining common page elements, a master page defines named placeholders that all each content page to fill in its own custom content. WSS V3 embraces the master page infrastructure of ASP.NE 2.0. All the built-in site templates that ship with WSS V3 employ a master page and content pages. By editing the master page, you can quickly change the layout and branding of all the site pages within a WSS site.
Web Parts Základní stavební kameny pro tvorbu portálu Obsahují možnosti pro personalizaci Lze naprogramovat vlastní Instructor Notes The is a general overview slide used to transition from the previous topic to the topic of Web Parts. You should not spend more than a minute or so on this slide. Here's what to say: Web Parts are used to display content in a modular form Web Parts are used to allow for customizarion/personalization by users There are many things in our industry similar to Web Parts such as Portlets, IVeiws and modules in .NET Nuke
WSS Architektura Michal Neuwirth DPE Group Microsoft Czech
Obsah Architektura WSS 3.0 WSS WebParts Práce s obsahem WSS Object Model 14
Web Part Historie Windows SharePoint Services 2.0 (WSS V2) ASP.NET 2.0 Vlastní Web Part infrastruktura ASP.NET 2.0 Nová zabudovaná infrastruktura pro Web Parts Nepodporuje WSS v2 Web Parts Windows SharePoint Services 2007 (WSS V3) Podpora WSS v2 Web Parts Podpora ASP.NET 2.0 Web Parts (preferováno) Instructor Notes When WSS V2 shipped in September of 2003, it introduced its own Web Part infrastructure. Two years later in 2005, Microsoft introduced a similar yet distinct Web Part framework with ASP.NET. Microsoft made this strategic decision to promote developing Web application with the Web Part paradigm to a larger audience of developers. Both Web Part infrastructures are similar in that they must serialize and store the customization data and personalization data associated with Web Parts and user modifications. However, the place the data is stored and the system classes and API used to get this job done is quite different between them. As you will see by the end of this lecture, WSS V3 has been designed to support both the older style of WSS Web Part as well as the newer style of ASP Web Parts. However, ASP.NET offers the more strategic approach for creating new Web Part projects targeted at WSS V3 sites.
SPWebPartZone (Right) WSS Web Part WSS Web Part stránka obsahuje: Jednu instanci SPWebPartManager Minimálně jednu SPWebPart zónu Volitelně Editor zónu a/nebo zónu pro Katalog SPWebPartManager SPWebPartZone (Left) SPWebPartZone (Right) Editor Zone Catalog Zone Web Part 1 Web Part 2 Web Part 3 Web Part 4 Web Part 5 Editor Part 1 Editor Part 2 Catalog Part 1 Catalog Part 2 Instructor Notes Now it's time to talk about how WSS V3 layers on top of the ASP.NET Web Part infrastructure. First, point out that Web Part customization data needs to be written not to the ASP.NET services database but to the content database of the hosting WSS site. For this reason, the WSS team was not able to directly use the WebPartManager control or the WebPartZone control. Instead these used these classes as base classes and dirived two specialized class named SPWebPartManager and SPWebPartZone. One of the main reasons to point this out to students is that Web Part pages contain WebPartManager and WebPartZone from an ASP.NET application cannot be used inside a WSS site unless it is modified to use SPWebPartManager and SPWebPartZone. Finally, mention that the SPWebPartManager is placed on default.master so that it doesn't need to be placed on content pages.
Tvorba Web Parts Class library DLL Potomek třídy ASP.NET Web Part Přetížení potřebných metod (RenderContents, …) Uložit DLL do adresáře \bin Nastavit DLL knihovnu ve web.config v části SafeControl jako bezpečnou Instructor Notes Now that we have covered the architecture of how Web Parts work, its' time to talk about how to create, test and debug a custom Web Part DLL project. Outline the bullet points on the slide above and tell the students you are going to be required to move through these steps to get our first custom Web Part up and running.
<Safe Control/> <!– web.config in root directory of hosting virtual server --> <configuration> <SharePoint> <SafeControls> <SafeControl Assembly="AcmeWebParts" Namespace="AcmeWebParts" TypeName="*" Safe="True" /> </SafeControls> </SharePoint> </configuration> Instructor Notes WSS V3 will only load and run Web Parts that have been marked as safe controls in the web.config file of the hosting WSS Web application. The motivation for why WSS requires safe control entries has to do with defending against attacks. For instance, think about a malicious individual who manages to get a read\write connection to the content database. What if this person uploaded or modified a .aspx file with an ASP.NET control or added a Web Part into a Web part zone in order to conduct an attack. This attack can be defeat by the fact that an administrator of the local Web server gets to specify the exact set of ASP.NET controls and Web Parts that can be loaded on a Web application by Web application basis.
Bezpečnost Web Parts Bezpečnost kontrolována pomocí CAS Nastavení bezpečnosti OSVR_Minimal (výchozí pro Office Server) WSS_Minimum (výchozí pro WSS V3) WSS_Medium Full <!– web.config in root directory of hosting virtual server --> <configuration> <system.web> <!-- <trust level="WSS_Minimal" originUrl="" /> --> <trust level="Full" originUrl="" /> </system.web> </configuration> Instructor Notes After discussing SafeControl entries, it's important to also mention that each web.config file contains a trust element that configures a sandbox for Web Part DLLs running inside the \bin directory. It's probably not a good idea in most classes to go to deeply into the topic of Code Access Security (CAS) which is the underlying technology used to enforce the sandbox. However students should realize that Web Part DLLs in the bin directory run inside a very restrictive sandbox by default because the trust level setting is either WSS_Minimum or OSVR_Minimum depending on whether you have installed just WSS or Microsoft Office SharePoint Server 2007. That means code inside a Web Part cannot read files from the local files system, connect to SQL Server or program against the WSS object model. You can change this by changing the level setting to WSS_Medium, saving the web.config file and running a IISRESET. To remove the sandbox completely, change the level setting to Full. save the web.config file and run IIS reset. Finally, point out that the trust level only affect Web Part DLLs inside the \bin directory of the hosting WSS Web application. Web Part DLLs loaded from the Global Assembly Cache always run with full trust.
Web Part Galerie Galerie je na úrovni Site kolekce Seznam všech Web Parts použitelné v rámci site Web Parts deklarované jako SafeControls mohou být „automaticky vytvořeny“ (tlačítko New) Web Parts lze importovat do galerie pomocí .webpart a .dwp souborů (tlačítko Upload) Instructor Notes To make a Web Part available to users, you must add it to the Web Part gallery. The Web Part gallery is scoped at the site collection and is implemented using a system-supplied document library in every top-level site. There are two different formats for Web Part description files. ASP.NET 2.0 uses a new XML format inside files with a .webpart extension. WSS V2 uses an older XML format inside files with a .dwp extension Importing a Web Part involves adding a Web Part description file into the Web Part Gallery. If you have a .webpart file or a .dwp file, you can click the Update button to import the associated Web Part. The functionality behind the New button has been introduced with WSS V3 and provides a very nice convenience for developers. If you click the New button, WSS presents a list of all the available Web Part classes from the set of Web Part DLLs configured inside the SafeControls section of the current Web application's web.config file. When you select a Web Part and then select Populate, WSS creates the Web Part description file at runtime and adds it into the Web Part gallery.
Typy Web Parts ASP.NET Web Parts WSS v2 Web Parts Hybridní Web Parts Potomek třídy ASP.NET WebPart Import souborem .webpart Preferované pro nové webparty WSS v2 Web Parts Potomek třídy WSS WebPart Import souborem .dwp Pro zpětnou kompatibilitu Hybridní Web Parts Využívá vlastností a novinek z ASP.NET 2.0 Instructor Notes You have already seen ASP.NET Web Parts. They should be used when creating new projects. This slides discusses the other two types. Optionally, you can open the demo project LitwareWebParts.csproj and step through code while you explain the difference between these three types of Web Parts that can be used in WSS V3 sites. The Web Part classes to step through are DemoASPPart DemoWSSPart DemoHybridPart WSS V2-style Web Part inherit from a different base class (also named WebPart) defined inside Microsoft.SharePoint DLL. WSS Web Part also use different attributes (e.g. Serializable) to mark properties that require persistence. To make these older WSS V2 Web Parts run inside WSS V3, the WSS team modified the WSS WebPart base classes to inherit from the ASP.NET WebPart base class instead of the ASP.NET Control class as in the earlier version. This technique is known as rebasing. Hybrid Web Parts directly inherit from WSS WebPart base class instead of the ASP.NET Webpart base class. However, hybrid Web Parts are different than WSS Web Parts because they use the newer style of attributes and are designed to take advantage of both the WSS WebPart class and the ASP.NET WebPart base class.
Tvorba WSS Web Parts Michal Neuwirth DPE Group Microsoft Czech
Obsah Architektura WSS 3.0 WSS WebParts Práce s obsahem WSS Object Model 23
Verze dokumentů Major a Minor verze dokumentů Nastavování limitů Při ukládání dokumentu (check-in) lze zvýšit Minor či Major číslování dokumentu Dle práv uživatelé čtou buď poslední Major či Minor verzi Možno vytvářet Draft verze Nastavování limitů Specifikace počtu Major verzí, které jsou k dispozici Specifikace zda se mají Draft verze odstranit při vytvoření nové Major verze Verzování položek v seznamech Ukládají se změny metadat Instructor Notes Versioning has been enhanced in WSS V3 in several ways. WSS V3 supports versioning on lists which was not supported in WSS V2. WSS V3 also supports a new feature known as pruning in which you can configure how many items or documents should be tracked in version history. Another nice enhancement to version in document libraries is the introduction to major and minor numbering. When a contributor checks in a document after modifying it from version 1.0, the contributor can choose to increment the minor number (e.g version 1.1) or the major number (e.g. 2.0). Readers of the document library will continue to see the last major revision while those with read\write access to the document libraries will see the latest minor revision.
RSS Feed Automatická podpora RSS feedu pro seznamy RSS feed _layouts/listfeed.aspx?List=%LIST_GUID% Instructor Notes Due to the ubiquitous nature of blogs and RSS in the software industry, the WSS team was motivated to add support to expose any list as a generic RSS feed. For example, you can configure a WSS list to support anonymous access and to expose itself as an RSS feed. This would allow users to download and synchronize the contents of this list right along side their favorite blog entries using Outlook 12 or a non-Microsoft RSS client such as NewsGator, Safari or the Google Reader.
RSS Feed Michal Neuwirth DPE Group Microsoft Czech
Site Columns Site column je definice sloupečku použitelná v rámci site Sloupec je uložen v Site Column Gallery Použitelné v libovolném listu, dokument library nebo jako typ obsahu (content type) v rámci Site Instructor Notes A site column is a column definition that can be created and then reused across multiple lists, document libraries and content types. A site column has a name which is also always the name of column that are based on the site column. A site column also defines the column type, its default value, any special rendering requirements and validation. Site columns are stored inside the Site Column Gallery of the current site. While a site column is scoped at the site level, it is visible to all the sites below it inside the current site collection. That means a site column defined in a top-level site can be thought of as being scoped to the current site collection.
Content Types Obdoba Site Columns Obsahuje schéma pro seznamy Definuje omezení a požadavky na položky Dále může obsahovat Sloupce pro ukládání metadat Šablonu pro dokumenty Formuláře pro New, Edit a Display Event handlery Workflow Tlačítko New může obsahovat více Content Types Instructor Notes Content types are like site columns in that they are reusable definitions that are scoped at the site level and visible to all child sites below. However, instead of defining a single column, a content type defines the shape and behavior for an item in a list or a document in a document library.
Dědičnost Content Types Lze vytvořit základní prevk content type a od něho vytvářet specifičtější prvky content type Base Document Litware Document Instructor Notes Content type definitions support inheritance. That means you never have to define a content type from scratch. Instead, you can create your content types by inheriting from WSS-supplied content types for standard lists or document libraries. You can also create a custom content type to be used as a base content type. That makes it possible for you to defines a common set of columns and/or behaviors that can be reused across several derived content types. This is something you will show them how to do in the upcoming demo. Litware Proposal Litware Presentation Litware Customer Report
Column Indexing Name Value Pair (NVP) Index Pro tvorbu pohledů nad velkým počtem položek Např. Všechny dokumenty splňující podmínku Datum Dokončení = TODAY V SQL Serveru se vytváří tabulka pro tento index V dotazech se používá pouze jeden index Instructor Notes List and document libraries faced performance limitations in WSS V2 when their contents exceeded 2000 items of documents. While nothing could really be done to help large lists perform better, documents within a Document library could be partitioned into folders of 2000 documents or less. The column indexing scheme introduced in WSS V3 allows you to optimize performance on large document libraries without resorting to folder-based bucketing scheme. It's also a very welcome feature for optimizing item retreival for large lists which didn't support any suitable optimization technique in WSS V2.
Cross List dotazy UNION napříč více listy Rozšíření WSS dotazovacího jazyku Lze použít list template nebo specifické ID listu Může využít column index „Out of the box“ příklady “My Documents”, “My Tasks” Data View Web Part Content By Query Web Part (Office Servers) Instructor Notes A cross list query is a developer-accessible feature that allows you to write code that queries multiple lists of document libraries and aggregates the results into a single result set. The power of this features is that it allows you to runs queries to roll up information across an entire site collection. For example, you can run a cross list query from a top-level site to create and display and aggregated view of content across all the child sites inside the current site collection. That being said, a cross list query is scoped by the current site collection. It does not make it possible to run a query that spans across multiple site collections.
Cross List dotaz Dotaz probíhá ve dvou fázích V první WSS vybírá relevantní seznamy a případně použije NVP index pro odstranění seznamů, které mají stejný obsah Ve druhé fázi WSS prochází data v každém seznamu a případně použije NVP index pro urychlení SPSiteDataQuery vrací DataTable SPSiteDataQuery.Query = @"<Where> <Eq> <FieldRef Name='Author'/> <Value Type='String'>'Fitzmaurice'</Value> </Eq> </Where>" SpSiteDataQuery.Lists = <Lists ServerTemplate="101"> Instructor Notes Cross list queries require the use of the new SPSiteDataQuery class. When used within a custom Web Part, this class allows you to prepare and execute a query that returns an ADO.NET DataTable object. Before executing the query, you specify the criteria for what lists or document libraries you want to query. The query in the slide above is run against all document libraries because it specifies a ServerTemplate of 101. You can also specify the fields to be returned as well as filtering and ordering information similar to what you would add to WHERE clauses and ORDER BY clauses in a SQL query.
Cross-list dotaz Michal Neuwirth DPE Group Microsoft Czech
Obsah Architektura WSS 3.0 WSS WebParts Práce s obsahem WSS Object Model 34
SPGlobalAdmin SPWebServer SPVirtualServer SPControl SPSite SPWeb Instructor Notes The SDK is your best resource for learning about the different classes . What you will find on the slide are the top-level classes that match one of the levels in the server and site architecture. Point out the difference between SPSite and SPWeb. SPList SPListItem
Administration Object Model Instructor Notes Go quickly over this slide just pointing out that the object model has been expanded with a lot of types that have to do with administration in SharePoint.
WSS Object Model Michal Neuwirth DPE Group Microsoft Czech
Události Event handler je .NET assembly obsahující alespoň jednu třídu zpracovávající události WSS WSS 2.0 Pouze pro document library Asynchronní zpracování WSS 3.0 Rozšířeno o seznamy a content types Podpora pro změnu schématu tak i položek v seznamech Podpora jak pro synchronní tak i asynchronní události Synchronní události jsou vyvolány PŘED operací a lze je zrušit Asynchronní jsou vyvolány PO operaci Instructor Notes and list items. Spend some time discussing the different possible types of events as well as scenarios in which you might use some of them. Make sure to point out that WSS V3 provides significant enhancements over the event support in WSS V2. WSS V2 only supported events on document libraries. Furthermore ,it only supported asynchronous events that were not cancellable. WSS V3 adds event support so lists and content types are in parity with document libraries. Also note that WSS V3 supports synchronous events that are cancellable as well as asynchronous events that fire after the commitment has already been made to the WSS content database
Tvorba event handleru .NET class library Microsoft.SharePoint.dll Potomek WSS třídy SPItemEventReceiver nebo SPWebEventReciever using Microsoft.SharePoint; namespace Demos { public class MyEventHandler: SPItemEventReceiver { public override void ItemDeleting(SPItemEventProperties properties) { properties.Cancel = true; properties.ErrorMessage = “my message"; } public override void ItemDeleted(SPItemEventProperties properties) { // neco udelame Instructor Notes This slide presents an example of an event handler that fires whenever an item in the timesheets classes is updated. Step through the event reciever code and explain how the properties parameter can be used to obtain a reference to the list and list item in question. Also explain the mechanics involved with cancalling the user's actions within an event.
Nasazení knihovny Vytvořit strong-named assembly Uložit DLL do GAC Zaregistrovat DLL jako event handler ve WSS Použít WSS v2 přístup (pouze pro document library) Programově pomocí OM Využít nové vlastnosti WSS Feature Framework Instructor Notes Event handlers like today with WSS v2 need to be deployed in the GAC. Explain the process if participants are not familiar with this process. Mention the 3 ways of making an event handler available and active. The first one is not one that developers have to follow for new event handlers. Mention that this one is only there for backward compatibility.
Programová registrace DLL private void RegisterForList (string site, string web, string listname, string assembly, string class) { SPSite site = new SPSite(site); SPWeb web = site.OpenWeb(web); SPList list = web.Lists[listname]; list.EventReceivers.Add (SPEventReceiverType.ItemDeleting, assembly, class); list.EventReceivers.Add (SPEventReceiverType.ItemDeleted, assembly, class); } Instructor Notes It is pretty easy to create a small application that allows you to associate an event handler with an existing list, library, content type. Explain that in the OM, you have a collection of event receivers developers can manage. The information needed for the registration is the full strong name of the assembly and then the class handling the event.
Práce s event handlery Michal Neuwirth DPE Group Microsoft Czech
Zdroje MSDN Microsoft.com SDK Beta2 MOSS BDC MetaData Manager http://msdn.microsoft.com/sharepoint/ Microsoft.com http://www.microsoft.com/office/preview/technologies/sharepointtechnology/highlights.mspx SDK Beta2 http://www.microsoft.com/downloads/details.aspx?FamilyId=05E0DD12-8394-402B-8936-A07FE8AFAFFD&displaylang=en MOSS BDC MetaData Manager http://www.sharepointblogs.com/files/97/tbaginski/entry9258.aspx
Na závěr Integrace s ASP.NET 2.0 Nové typy prvků pro práci s obsahem Podpora RSS Feeds Nový Objektový model Nové možnosti zpracování událostí
© 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.