Share via


CodeModel2 接口

允许对源代码文件中的编程构造进行访问。

命名空间:  EnvDTE80
程序集:  EnvDTE80(在 EnvDTE80.dll 中)

语法

声明
<GuidAttribute("99B9CD0E-6C89-4BC4-BBA2-FFD3529D3ACB")> _
Public Interface CodeModel2 _
    Inherits CodeModel
[GuidAttribute("99B9CD0E-6C89-4BC4-BBA2-FFD3529D3ACB")]
public interface CodeModel2 : CodeModel
[GuidAttribute(L"99B9CD0E-6C89-4BC4-BBA2-FFD3529D3ACB")]
public interface class CodeModel2 : CodeModel
[<GuidAttribute("99B9CD0E-6C89-4BC4-BBA2-FFD3529D3ACB")>]
type CodeModel2 =  
    interface
        interface CodeModel
    end
public interface CodeModel2 extends CodeModel

CodeModel2 类型公开以下成员。

属性

  名称 说明
公共属性 CodeElements (继承自 CodeModel。)
公共属性 CodeElements 获取 CodeElements 的集合。
公共属性 DTE (继承自 CodeModel。)
公共属性 DTE 获取顶级扩展性对象。
公共属性 IsCaseSensitive (继承自 CodeModel。)
公共属性 IsCaseSensitive 获取一个值,该值指示当前语言是否区分大小写。
公共属性 Language (继承自 CodeModel。)
公共属性 Language 获取用于创作代码的编程语言。
公共属性 Parent (继承自 CodeModel。)
公共属性 Parent 获取 CodeModel 对象的直接父对象。

页首

方法

  名称 说明
公共方法 AddAttribute(String, Object, String, Object) (继承自 CodeModel。)
公共方法 AddAttribute(String, Object, String, Object) 创建新的特性代码构造,并将代码插入正确的位置。
公共方法 AddClass(String, Object, Object, Object, Object, vsCMAccess) (继承自 CodeModel。)
公共方法 AddClass(String, Object, Object, Object, Object, vsCMAccess) 创建新的类代码构造,并将代码插入正确的位置。
公共方法 AddDelegate(String, Object, Object, Object, vsCMAccess) (继承自 CodeModel。)
公共方法 AddDelegate(String, Object, Object, Object, vsCMAccess) 创建新的委托代码构造,并将代码插入正确的位置。
公共方法 AddEnum(String, Object, Object, Object, vsCMAccess) (继承自 CodeModel。)
公共方法 AddEnum(String, Object, Object, Object, vsCMAccess) 创建新的枚举代码构造,并将代码插入正确的位置。
公共方法 AddFunction(String, Object, vsCMFunction, Object, Object, vsCMAccess) (继承自 CodeModel。)
公共方法 AddFunction(String, Object, vsCMFunction, Object, Object, vsCMAccess) 创建新的函数代码构造,并将代码插入正确的位置。
公共方法 AddInterface(String, Object, Object, Object, vsCMAccess) (继承自 CodeModel。)
公共方法 AddInterface(String, Object, Object, Object, vsCMAccess) 创建新的接口代码构造,并将代码插入正确的位置。
公共方法 AddNamespace(String, Object, Object) (继承自 CodeModel。)
公共方法 AddNamespace(String, Object, Object) 创建新的命名空间代码构造,并将代码插入正确的位置。
公共方法 AddStruct(String, Object, Object, Object, Object, vsCMAccess) (继承自 CodeModel。)
公共方法 AddStruct(String, Object, Object, Object, Object, vsCMAccess) 创建新的结构代码构造,并将代码插入正确的位置。
公共方法 AddVariable(String, Object, Object, Object, vsCMAccess) (继承自 CodeModel。)
公共方法 AddVariable(String, Object, Object, Object, vsCMAccess) 创建新的变量代码构造,并将代码插入正确的位置。
公共方法 CodeTypeFromFullName(String) (继承自 CodeModel。)
公共方法 CodeTypeFromFullName(String) 基于完全限定名返回一个代码元素。
公共方法 CreateCodeTypeRef(Object) (继承自 CodeModel。)
公共方法 CreateCodeTypeRef(Object) 基于所传递的数据类型指示器返回一个 CodeTypeRef 对象。
公共方法 DotNetNameFromLanguageSpecific 将本机语言字符串转换为 .NET 格式。
公共方法 ElementFromID 返回一个特定的现有代码元素。
公共方法 IsValidID(String) (继承自 CodeModel。)
公共方法 IsValidID(String) 返回某指定名称是否为当前语言的有效编程标识符。
公共方法 LanguageSpecificNameFromDotNet 从完全限定的 Visual Studio 名称转换为非托管命名空间形式。
公共方法 Remove(Object) (继承自 CodeModel。)
公共方法 Remove(Object) 从源文件移除指定的代码元素。
公共方法 Synchronize 确保当前所有的节点模型事件已经引发,且模型的生成已完成。

页首

备注

CodeModel 对象在项目级对 Visual Studio 中的语言提供代码模型功能,但并非其中的每种语言都支持此对象的某些成员。

CodeModel 对象的主要功能是使用户能够在已知项目完全限定名的情况下在项目内查找任何可访问的代码元素,并确定编写此项目所用的编程语言。

备注

在进行某些类型的编辑之后,代码模型元素(如类、结构、函数、特性、委托等)的值可能是非确定性的,这意味着不能指望它们的值总是保持不变。有关更多信息,请参见 使用代码模型查找代码 (Visual Basic) 中的“代码模型元素的值可能会更改”一节。

请参见

参考

EnvDTE80 命名空间

其他资源

如何:编译和运行自动化对象模型代码示例

使用代码模型查找代码 (Visual Basic)

使用代码模型查找代码 (Visual C#)