다음을 통해 공유


VSProject2.WorkOffline 속성

웹 프로젝트 작업을 온라인으로 수행할지 오프라인으로 수행할지 나타냅니다. 오프라인으로 작업하면 프로젝트 파일의 오프라인 저장 위치에서 개발 작업이 계속 수행되므로 서버의 프로젝트 파일은 변경되지 않습니다.

네임스페이스:  VSLangProj80
어셈블리:  VSLangProj80(VSLangProj80.dll)

구문

‘선언
Property WorkOffline As Boolean
bool WorkOffline { get; set; }
property bool WorkOffline {
    bool get ();
    void set (bool value);
}
abstract WorkOffline : bool with get, set
function get WorkOffline () : boolean 
function set WorkOffline (value : boolean)

속성 값

형식: Boolean
부울 값입니다.웹 응용 프로그램의 경우 이 속성은 오프라인에서 작업하면 true를 반환하고 온라인에서 작업하면 false를 반환합니다.또한 로컬 프로젝트의 경우에는 false를 반환합니다.

설명

프로젝트가 오프라인인 경우 서버에 있는 프로젝트 파일에 쓰거나 액세스하는 작업은 수행되지 않습니다.

오프라인 프로젝트 파일의 URL을 변경하려면 Project.Properties 컬렉션의 OfflineURL 속성을 사용합니다.

이 속성은 웹 프로젝트의 경우에만 변경할 수 있습니다. 또한 읽기/쓰기 속성이지만 로컬 프로젝트에서 이 속성을 설정하려고 하면 오류가 발생합니다.

예제

이 예제에서는 솔루션의 첫 번째 프로젝트가 Visual Basic 또는 Visual C# 프로젝트인 것으로 가정합니다. 이 예제를 추가 기능으로 실행하려면 방법: 자동화 개체 모델 코드의 예제 컴파일 및 실행을 참조하십시오.

[Visual Basic]

' Add-in code.
Imports VSLangProj
Imports VSLangProj80
Public Sub OnConnection(ByVal application As Object,_
 ByVal connectMode As ext_ConnectMode, ByVal addInInst As Object, _
 ByRef custom As Array) Implements IDTExtensibility2.OnConnection
    applicationObject = CType(application, DTE2)
    addInInstance = CType(addInInst, AddIn)
    WorkOfflineExample(applicationObject)
End Sub

Sub WorkOfflineExample(ByVal dte As DTE2)
    ' This example assumes that the first project in the solution is 
    ' a Visual Basic or C# project.
    Dim aVSProject As VSProject2 = _
    CType(applicationObject.Solution.Projects.Item(1).Object,_
    VSProject2)
    MsgBox("Work offline is: " & aVSProject.WorkOffline.ToString())
    Try
        MsgBox("Setting WorkOffline to false.")
        aVSProject.WorkOffline = False
    Catch e As System.Exception
        ' Setting the property fails for local projects.
        MsgBox(e.Message)
    End Try
    Try
        MsgBox("Setting WorkOffline to true.")
        aVSProject.WorkOffline = True
    Catch e As System.Exception
        ' Setting the property fails for local projects.
        MsgBox(e.Message)
    End Try
End Sub

[C#]

using System.Windows.Forms;
using VSLangProj;
using VSLangProj2;
using VSLangProj80;
public void OnConnection(object application, ext_ConnectMode
 connectMode, object addInInst, ref Array custom)
{ 
    applicationObject = (DTE2)application;
    addInInstance = (AddIn)addInInst;
    WorkOfflineExample((DTE2)applicationObject);
}

public void WorkOfflineExample( DTE2 dte ) 
{ 
// This example assumes that the first project in the solution is 
// a Visual Basic or C# project.
    VSProject2 aVSProject = ( ( VSProject2 )
(applicationObject.Solution.Projects.Item( 1 ).Object ) ); 
    MessageBox.Show( "Work offline is: " + 
aVSProject.WorkOffline.ToString()); 
    try 
    { 
        MessageBox.Show( "Setting WorkOffline to false."); 
        aVSProject.WorkOffline = false; 
    } 
    catch ( System.Exception e ) 
    { 
        // Setting the property fails for local projects.
        MessageBox.Show( e.Message); 
    } 
    try 
    { 
        MessageBox.Show( "Setting WorkOffline to true."); 
        aVSProject.WorkOffline = true; 
    } 
    catch ( System.Exception e ) 
    { 
        // Setting the property fails for local projects.
        MessageBox.Show( e.Message); 
    } 
}

.NET Framework 보안

참고 항목

참조

VSProject2 인터페이스

VSLangProj80 네임스페이스