初始化 ProvideLanguageCodeExpansionAttribute 类的新实例。
命名空间: Microsoft.VisualStudio.Shell
程序集: Microsoft.VisualStudio.Shell.11.0(在 Microsoft.VisualStudio.Shell.11.0.dll 中)
语法
声明
Public Sub New ( _
languageService As Object, _
languageName As String, _
languageResourceId As Integer, _
languageIdentifier As String, _
pathToSnippetIndexFile As String _
)
public ProvideLanguageCodeExpansionAttribute(
Object languageService,
string languageName,
int languageResourceId,
string languageIdentifier,
string pathToSnippetIndexFile
)
参数
- languageService
类型:System.Object
[in] 这是包含 GUID 或类型的字符串表示形式实现语言服务的类。语言服务的 GUID 从该字符串或类型派生。
- languageName
类型:System.String
[in] 语言的名称。此名称将在注册表为该注册表项和访问名。
- languageResourceId
类型:System.Int32
[in] 语言名称的本地化版本的资源 ID。这用于在对话框和其他用户界面元素的语言名称。
- languageIdentifier
类型:System.String
[in] 包含标识符特定的字符串用于指示并确定代码段的语言。
- pathToSnippetIndexFile
类型:System.String
[in] 包含路径的字符串。语言的代码段索引文件。
备注
以下注册表布局显示位置使用每个必选参数。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\[X.Y]\Languages\
Language Services\
CodeExpansions\
[languageName]\
(Default) = reg_sz: [languageService]
DisplayName = reg_sz: [languageResourceId]
IndexPath = reg_sz: [pathToSnippetIndexFile]
LangStringID = reg_sz: [languageIdentifier]
Package = reg_sz: [Package GUID]
[包的 GUID] 值从实现在程序集的 IVsPackage 接口的类将自动获取。
除了在参数部分列出的必需参数外,构造函数在必需的参数后还接受选项命名参数。这是在用户定义的特性只支持的特殊形式。命名参数对应于具有访问此类的公共属性并设置运算符。
有关如何的详细信息代码段索引文件中创建和使用,请参见 为代码段 (托管包结构) 支持。
示例
using Microsoft.VisualStudio.Shell;
namespace MyLanguagePackage
{
internal class MyConstants
{
public const string languageName = "MyLanguage";
public const int languageNameResourceID = 106;
public const string languageIdentifier = "mylanguage";
public const string snippetsIndexFilePath = @"%InstallRoot%\MyLanguage\SnippetsIndex.xml";
}
[ProvideCodeExpansion(typeof(MyLanguageService), // Required
MyConstants.languageName, // Required
MyConstants.languageNameResourceID, // Required
MyConstants.languageIdentifier, // Required
MyConstants.snippetsIndexFilePath, // Required
// Optional code expansion properties
SearchPaths = @"%InstallRoot%\MyLanguage\Snippets\%LCID%\Snippets;" +
@"\%MyDocs%\Code Snippets\MyLanguage\My Code Snippets";
)]
class MyLanguagePackage
{
}
}
.NET Framework 安全性
- 对直接调用方的完全信任。此成员不能由部分信任的代码使用。有关更多信息,请参见通过部分受信任的代码使用库。
请参见
参考
ProvideLanguageCodeExpansionAttribute 类
Microsoft.VisualStudio.Shell 命名空间