HostFunctionstryCatch Method | 
            Allows script code to handle host exceptions.
            
Namespace: Microsoft.ClearScriptAssembly: ClearScript.Core (in ClearScript.Core.dll) Version: 7.5.0
Syntaxpublic bool tryCatch(
	Object tryFunc,
	Object catchFunc,
	Object finallyFunc = null
)
Public Function tryCatch ( 
	tryFunc As Object,
	catchFunc As Object,
	Optional finallyFunc As Object = Nothing
) As Boolean
public:
bool tryCatch(
	Object^ tryFunc, 
	Object^ catchFunc, 
	Object^ finallyFunc = nullptr
)
member tryCatch : 
        tryFunc : Object * 
        catchFunc : Object * 
        ?finallyFunc : Object 
(* Defaults:
        let _finallyFunc = defaultArg finallyFunc null
*)
-> bool Parameters
- tryFunc  Object
 - A script function that invokes one or more host methods or properties.
 - catchFunc  Object
 - A script function to invoke if tryFunc throws an exception.
 - finallyFunc  Object  (Optional)
 - An optional script function that performs cleanup for the operation.
 
Return Value
BooleanTrue if 
tryFunc completed successfully, 
false if it threw an exception that was handled by 
catchFunc.
Remarks
            This function uses a try-catch-finally statement to invoke
            tryFunc. If an exception is thrown, it is caught and passed to
            catchFunc for analysis. If catchFunc returns
            false, the exception is rethrown. Regardless of the outcome,
            finallyFunc, if specified, is invoked as a final step before the
            function exits.
            
Example
            The following code demonstrates handling host exceptions in script code.
            It assumes that an instance of 
ExtendedHostFunctions is exposed under
            the name "host"
            (see 
AddHostObject).
            
var ConsoleT = host.type("System.Console");
var WebClientT = host.type("System.Net.WebClient", "System");
var webClient = host.newObj(WebClientT);
host.tryCatch(
    function () {
        
        ConsoleT.WriteLine(webClient.DownloadString("http://cnn.com"));
    },
    function (exception) {
        
        ConsoleT.WriteLine("*** ERROR: " + exception.GetBaseException().ToString());
        return true;
    },
    function () {
        
        ConsoleT.WriteLine("*** CLEANING UP ***");
        webClient.Dispose();
    }
);
See Also