Export (0) Print
Expand All

ITextTemplatingEngineHost.LoadIncludeText Method

Acquires the text that corresponds to a request to include a partial text template file.

Namespace:  Microsoft.VisualStudio.TextTemplating
Assembly:  Microsoft.VisualStudio.TextTemplating (in Microsoft.VisualStudio.TextTemplating.dll)

bool LoadIncludeText(
	string requestFileName,
	out string content,
	out string location
)

Parameters

requestFileName
Type: System.String

The name of the partial text template file to acquire.

content
Type: System.String%

A String that contains the acquired text or Empty if the file could not be found.

location
Type: System.String%

A String that contains the location of the acquired text. If the host searches the registry for the location of include files or if the host searches multiple locations by default, the host can return the final path of the include file in this parameter. The host can set the location to Empty if the file could not be found or if the host is not file-system based.

Return Value

Type: System.Boolean
true to indicate that the host was able to acquire the text; otherwise, false.

If the user has specified the optional include directive in a text template, the engine calls this method. This method can be called 0, 1, or multiple times for each transformation. For more information, see Directive Syntax (Domain-Specific Languages).

This method can also be called from a custom directive processor.

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 bool LoadIncludeText(string requestFileName, out string content, out string location)
{
    content = System.String.Empty;
    location = System.String.Empty;
    
    //If the argument is the fully qualified path of an existing file,
    //then we are done.
    //----------------------------------------------------------------
    if (File.Exists(requestFileName))
    {
        content = File.ReadAllText(requestFileName);
        return true;
    }

    //This can be customized to search specific paths for the file.
    //This can be customized to accept paths to search as command line
    //arguments.
    //----------------------------------------------------------------
    else
    {
        return false;
    }
}

Community Additions

ADD
Show:
© 2014 Microsoft