2012-07-28 30 views
6

Đây là mã của tôi:PowerShell: Tạo Custom Exception

Function Foo { 
    If (1 -Eq 2) { 
     # Do stuff 
    } 
    Else { 
     # Throw custom exception 
    } 
} 

Try { 
    Foo 

    Write-Host "Success" 
} 
Catch { 
    $ErrorMessage = $_.Exception.InnerException.Message 

    Write-Host "Failure" 

    # Do stuff with the error message 
} 

Tôi muốn thay thế # Throw custom exception với mã mà sẽ làm cho Catch để bắn. Làm thế nào tôi có thể làm điều đó?

Trả lời

18

Không chắc tôi thực sự nhận được câu hỏi của bạn, nhưng nó có vẻ như tất cả các bạn muốn làm là:

throw "message for the exception" 
+1

Tôi đã sử dụng '$ ErrorMessage = $ _ Exception.InnerException.Message' vì tôi cho rằng. sẽ làm việc với 'Throw'. Hóa ra nó phải là '$ _. Exception.Message' trong trường hợp này. Cảm ơn! – Nick