ITextTemplatingEngineHost.ProvideTemplatingAppDomain Method
Provides an application domain to run the generated transformation class.
Namespace: Microsoft.VisualStudio.TextTemplating
Assembly: Microsoft.VisualStudio.TextTemplating.Interfaces.10.0 (in Microsoft.VisualStudio.TextTemplating.Interfaces.10.0.dll)
Syntax
'Declaration
Function ProvideTemplatingAppDomain ( _
content As String _
) As AppDomain
AppDomain ProvideTemplatingAppDomain(
string content
)
AppDomain^ ProvideTemplatingAppDomain(
String^ content
)
abstract ProvideTemplatingAppDomain :
content:string -> AppDomain
function ProvideTemplatingAppDomain(
content : String
) : AppDomain
Parameters
content
Type: StringThe contents of the text template file to be processed.
Return Value
Type: AppDomain
An AppDomain that compiles and executes the generated transformation class.
Remarks
The host can use the content parameter to provide a specific AppDomain depending on the text template file to be processed. For example, the host could cache an AppDomain if the same text template file is being processed repeatedly. The host can ignore the content parameter if the host does not need the information.
Examples
The following code example shows a possible implementation for a custom host. This code example is part of a larger example. For the complete example, see Walkthrough: Creating a Custom Text Template Host.
public AppDomain ProvideTemplatingAppDomain(string content)
{
//this host will provide a new application domain each time the
//engine processes a text template
//-------------------------------------------------------------
return AppDomain.CreateDomain("Generation App Domain");
//this could be changed to return the current appdomain, but new
//assemblies are loaded into this AppDomain on a regular basis
//if the AppDomain lasts too long, it will grow indefintely
//which might be regarded as a leak
//this could be customized to cache the application domain for
//a certain number of text template generations (for example 10)
//this could be customized based on the contents of the text
//template, which are provided as a parameter for that purpose
}
Public Function ProvideTemplatingAppDomain(ByVal content As String) As System.AppDomain Implements Microsoft.VisualStudio.TextTemplating.ITextTemplatingEngineHost.ProvideTemplatingAppDomain
'this host will provide a new application domain each time the
'engine processes a text template
'-------------------------------------------------------------
Return AppDomain.CreateDomain("Generation App Domain")
'this could be changed to return the current application domain, but new
'assemblies are loaded into this application domain on a regular basis
'if the application domain lasts too long, it will grow indefintely
'which might be regarded as a leak
'this could be customized to cache the application domain for
'a certain number of text template generations (for example 10)
'this could be customized based on the contents of the text
'template, which are provided as a parameter for that purpose
End Function
.NET Framework Security
- Full trust for the immediate caller. This member cannot be used by partially trusted code. For more information, see Using Libraries from Partially Trusted Code.
See Also
Reference
ITextTemplatingEngineHost Interface
Microsoft.VisualStudio.TextTemplating Namespace