ASP NET 2 0 Provider Model ASP NET

  • Slides: 23
Download presentation
ASP. NET 2. 0 Provider Model 概要

ASP. NET 2. 0 Provider Model 概要

プロバイダモデル ASP. NET Application ASP. NET Services Providers Data Stores

プロバイダモデル ASP. NET Application ASP. NET Services Providers Data Stores

プロバイダモデル ASP. NET Application ASP. NET Services Provider A Provider B Provider C Data

プロバイダモデル ASP. NET Application ASP. NET Services Provider A Provider B Provider C Data Store A Data Store B Data Store C

プロバイダモデル ASP. NET Services Provider Data Stores Web. Config

プロバイダモデル ASP. NET Services Provider Data Stores Web. Config

ASP. NET 2. 0 Provider Model とStrategy • Strategy パターンとは

ASP. NET 2. 0 Provider Model とStrategy • Strategy パターンとは

ASP. NET 2. 0 Provider Model とStrategy • ASP. NET 2. 0 Provider Model

ASP. NET 2. 0 Provider Model とStrategy • ASP. NET 2. 0 Provider Model

機能と提供されるプロバイダ • Membership – System. Web. Security. Membership. Provider • System. Web. Security. Active.

機能と提供されるプロバイダ • Membership – System. Web. Security. Membership. Provider • System. Web. Security. Active. Directory. Membership. Provider • System. Web. Security. Sql. Membership. Provider • Role management – System. Web. Security. Role. Provider • System. Web. Security. Authorization. Store. Role. Provider • System. Web. Security. Sql. Role. Provider • System. Web. Security. Windows. Token. Role. Provider • Site map – System. Web. Site. Map. Provider • System. Web. Xml. Site. Map. Provider

機能と提供されるプロバイダ • Profile – System. Web. Profile. Provider • System. Web. Profile. Sql. Profile.

機能と提供されるプロバイダ • Profile – System. Web. Profile. Provider • System. Web. Profile. Sql. Profile. Provider • Session state – System. Web. Session. State. Store. Provider. Base • System. Web. Session. State. In. Proc. Session. State. Store • System. Web. Session. State. Out. Of. Proc. Session. State. Store • System. Web. Session. State. Sql. Session. State. Store

機能と提供されるプロバイダ • Web events – System. Diagnostics. Eventing. Event. Provider • • • System.

機能と提供されるプロバイダ • Web events – System. Diagnostics. Eventing. Event. Provider • • • System. Web. Management. Event. Log. Web. Event. Provider System. Web. Management. Simple. Mail. Web. Event. Provider System. Web. Management. Templated. Mail. Web. Event. Provider System. Web. Management. Sql. Web. Event. Provider System. Web. Management. Trace. Web. Event. Provider System. Web. Management. Wmi. Web. Event. Provider

機能と提供されるプロバイダ • Web Parts personalization – System. Web. UI. Web. Controls. Web. Parts. Personalization.

機能と提供されるプロバイダ • Web Parts personalization – System. Web. UI. Web. Controls. Web. Parts. Personalization. Provider • System. Web. UI. Web. Controls. Web. Parts. Sql. Personalization. Provider • Protected configuration – System. Configuration. Protected. Configuration. Provider • System. Configuration. DPAPIProtected. Configuration. Provider • System. Configuration. RSAProtected. Configuration. Provider

Provider. Base クラス Namespace System. Configuration. Provider Public Must. Inherit Class Provider. Base Private

Provider. Base クラス Namespace System. Configuration. Provider Public Must. Inherit Class Provider. Base Private _name As String Private _description As String Private _initialized As Boolean Public Overridable Read. Only Property Name() As String Public Overridable Read. Only Property Description() As String Public Overridable Sub Initialize (By. Val name As String, By. Val config As System. Collections. Specialized. Name. Value. Collection) End Class End Namespace

Provider. Base. Initialize メソッド Public Overridable Sub Initialize(By. Val name As String, By. Val

Provider. Base. Initialize メソッド Public Overridable Sub Initialize(By. Val name As String, By. Val config As Name. Value. Collection) Sync. Lock Me If _initialized Then Throw New Invalid. Operation. Exception(". . . ") End If _initialized = True End Sync. Lock If (name = Nothing) Then Throw New Argument. Null. Exception("name") End If If (name. Length = 0) Then Throw New Argument. Exception(". . . ", "name") End If _name = name If config Is. Nothing Then _description = config("description") config. Remove("description") End If End Sub

Web. Config <config. Sections> <section. Group name="system. web"> <section name="Custom. Service" type="Custom. Service. Section,

Web. Config <config. Sections> <section. Group name="system. web"> <section name="Custom. Service" type="Custom. Service. Section, Custom. Sections" allow. Definition="Machine. To. Application" restart. On. External. Changes="true" /> </section. Group> </config. Sections>

Web. Config <Custom. Service default. Provider="Sql. Custom. Provider"> <providers> <add name="Sql. Custom. Provider" type="Sql.

Web. Config <Custom. Service default. Provider="Sql. Custom. Provider"> <providers> <add name="Sql. Custom. Provider" type="Sql. Custom. Provider" connection. String. Name=“…"/> <add name="Xml. Custom. Provider" type="Xml. Custom. Provider" directory. Path=“…"/> </providers> </Custom. Service>

Load. Providers メソッド Private Shared Sub Load. Providers() If _provider Is Nothing Then Sync.

Load. Providers メソッド Private Shared Sub Load. Providers() If _provider Is Nothing Then Sync. Lock _lock If _provider Is Nothing Then Dim section As Custom. Service. Section = _ CType(Web. Configuration. Manager. Get. Section _ (“system. web/custom. Service”), Custom. Service. Section) _providers = New Custom. Provider. Collection() Providers. Helper. Instantiate. Providers _ (section. Providers, _providers, Get. Type(Custom. Provider)) _provider = _providers(section. Default. Provider) If _provider Is Nothing Then Throw New Provider. Exception _ ("Unable to load default Custom. Provider") End If End Sync. Lock End If End Sub

参考文献 MSDN : Provider Model, Visual Basic (Visual Basic) http: //msdn. microsoft. com/en-us/library/aa 530801.

参考文献 MSDN : Provider Model, Visual Basic (Visual Basic) http: //msdn. microsoft. com/en-us/library/aa 530801. aspx MSDN : ASP. NET 2. 0 Provider Model : Introduction to the Provider Model (C#) http: //msdn. microsoft. com/en-us/library/aa 479030. aspx ASP. NET 2. 0 Provider Model. pdf (C#) http: //download. microsoft. com/download/2/a/e/2 aeabd 28 -3171 -4 b 95 -936322150625 a 6 a 5/ASP. NET%20 Provider%20 Model. pdf MSDN : AProvider Tool Kit http: //msdn. microsoft. com/en-us/asp. net/aa 336558. aspx