ProjectItem.Save(String) 方法

定义

保存项目或项目项。

void Save(std::wstring const & FileName = "");
[System.Runtime.InteropServices.DispId(118)]
public void Save (string FileName = "");
[<System.Runtime.InteropServices.DispId(118)>]
abstract member Save : string -> unit
Public Sub Save (Optional FileName As String = "")

参数

FileName
String

可选。 保存项目或项目项所用的名称。

属性

示例

此示例仅适用于 Visual Studio .NET 2003。 有关详细信息,请参阅 使用模板迁移创建项目的代码

Sub SaveExample(ByVal dte As DTE)  

    ' NOTE: This example requires a reference to the   
    '       VSLangProj namespace.  

    ' Create a new solution.  
    Dim soln As Solution = dte.Solution  
    Dim solnName As String = "NewSolution.sln"  
    Dim tempPath As String = System.IO.Path.GetTempPath()  
    soln.Create(tempPath, solnName)  

    ' Create a new Visual Basic Console Application project.  
    Dim templatePath As String = dte.Solution.TemplatePath( _  
        PrjKind.prjKindVBProject)  
    templatePath &= "ConsoleApplication.vsz"  
    Dim projName As String = "NewProject"  
    soln.AddFromTemplate(templatePath, tempPath & projName, projName)  
    Dim proj As Project = soln.Item(1)  

    ' Add a new class to the project.  
    templatePath = dte.Solution.ProjectItemsTemplatePath( _  
        PrjKind.prjKindVBProject)  
    templatePath &= "\Class.vsz"  
    Dim projItemName As String = "NewClass.vb"  
    Dim projItem As ProjectItem = proj.ProjectItems.AddFromTemplate( _  
        templatePath, projItemName)  

    ' Add an Imports statement to the class file.  
    Dim sel As TextSelection = _  
        CType(projItem.Document.Selection, TextSelection)  
    sel.StartOfDocument()  
    sel.Insert("Imports System.Collections" & vbCrLf & vbCrLf, _  
        vsInsertFlags.vsInsertFlagsCollapseToStart)  

    ' Save the project item, project, and solution.  
    projItem.Save()  
    proj.Save(proj.FullName)  
    soln.SaveAs(tempPath & solnName)  

End Sub  
public void SaveExample(DTE dte)  
{  
    // NOTE: This example requires a reference to the   
    //       VSLangProj namespace.  

    // Create a new solution.  
    Solution soln = dte.Solution;  
    string solnName = "NewSolution.sln";  
    string tempPath = System.IO.Path.GetTempPath();  
    soln.Create(tempPath, solnName);  

    // Create a new C# Console Application project.  
    string templatePath =   
        dte.Solution.get_TemplatePath(PrjKind.prjKindCSharpProject);  
    templatePath += "CSharpConsole.vsz";  
    string projName = "NewProject";  
    soln.AddFromTemplate(templatePath, tempPath + projName,   
        projName, false);  
    Project proj = soln.Item(1);  

    // Add a new class to the project.  
    templatePath = dte.Solution.ProjectItemsTemplatePath(  
        PrjKind.prjKindCSharpProject);  
    templatePath += @"\CSharpAddClassWiz.vsz";  
    string projItemName = "NewClass.cs";  
    ProjectItem projItem = proj.ProjectItems.AddFromTemplate(  
        templatePath, projItemName);  

    // Add a using statement to the class file.  
    TextSelection sel = (TextSelection)projItem.Document.Selection;  
    sel.StartOfDocument(false);  
    sel.Insert("using System.Collections;" + Environment.NewLine,   
        (int)vsInsertFlags.vsInsertFlagsCollapseToStart);  

    // Save the project item, project, and solution.  
    projItem.Save("");  
    proj.Save(proj.FullName);  
    soln.SaveAs(tempPath + solnName);  
}  

注解

如果 FileName 无法写入,例如磁盘已满或有写入权限问题,则会 Save 产生错误。 将使用基于的新名称保存文件 FileName

适用于