Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 网站建设 > ASP.NET > MsAjax Lib-> Error 类型扩展
【标  题】:MsAjax Lib-> Error 类型扩展
【关键字】:MsAjax,Lib-,Error
【来  源】:http://blog.csdn.net/chsword/archive/2007/02/26/1514714.aspx

MsAjax Lib-> Error 类型扩展

Your Ad Here  

Error 类型扩展

提供了基于 ECMAScript (JavaScript) Error 对象的扩展.

命名空间: 无. 本扩展类型是全局型的不属于任意一命名空间。

继承:

语法

var err = Error.create(message, errorInfo);

扩展成员

名称

说明

Error.argument 函数

根据指定的异常消息和非法的函数参数来创建一个 Sys.ArgumentException型 的异常

Error.argumentNull 函数

根据指定的错误消息和NULL参数来创建一个 Sys.ArgumentNullException型 的异常。

Error.argumentOutOfRange 函数

根据指定的错误消息和可以导致异常的参数来创建一个 Sys.ArgumentOutOfRangeException型 的异常。

Error.argumentType 函数

根据指定的错误消息和实际类型以及期待类型的参数来创建一个 Sys.ArgumentTypeException型 的异常。

Error.argumentUndefined 函数

根据指定的错误消息和Undefined参数来创建一个 Sys.ArgumentUndefinedException型 的异常。

Error.create 函数

根据指定的错误消息创建一个 Error 对象。

Error.invalidOperation 函数

根据指定的错误消息和导致本异常的参数创建一个 Sys.InvalidOperationException型的异常。

Error.notImplemented 函数

根据指定的错误消息创建一个 Sys.NotImplementedException型的异常。

Error.parameterCount 函数

根据指定的错误消息创建一个 Sys.ParameterCountException型的异常。

Error.popstackFrame 函数

将 该Error实例的fileName和lineNumber字段更新为该Error被掷出时的位置,而不是该Error被创建时的位置。(--引用自 http://www.cnblogs.com/dflying/archive/2007/02/09/646430.html)

备注

Error 扩展是Microsoft AJAX库的一部分。 它为 JavaScript 的 Error 对象提供了许多与 .NET 程序结合的更密切的成员。

客户端脚本的 Error 类型 可以更有效的处理 Debug 和 Release 方法

Microsoft ASP.NET AJAX Error 对象扩展提供了客户端脚本的更有效的编译方法(debug 或 release)异常处理 使用release方式,异常处理加强了性能,只包含必须的异常处理使脚本大小缩到最小。 使用debug方式, 异常处理提供了更多特色功能例如类型检查和参数检查, 并且在release方式中提供了更多复杂的异常消息。 更多消息,请参见 How to Enable Debugging for ASP.NET ApplicationsASP.NET AJAX 追踪与调试综述.

Error 类型

Error 类型扩展创建了内部异常的定义结构类型, 使用参数名和可行的扩展数据使异常描述更加丰富和精确。

你可以通过测试异常类型来决定使用何种方法。更多信息,请参见 Object 类型扩展, Object.getType 函数, 和Object.getTypeName 函数.

下面这个示例使用Error对象的getTypeName方法测试了异常类型。

try{ } 
catch (e) {
If (Object.getTypeName(e) == "ArgumentNull")
// 执行的操作
}

更多关于JavaScript 的对象的类型扩展的信息,请参见 Error Object in the JScript Language Reference.

下面的示例展示了如何通过ASP.NET AJAX Error 对象的扩展的 create 方法来创建一个新的 Error 对象实例.

CS

<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager runat="server" ID="ScriptManager1">
</asp:ScriptManager>
</form>
</body>
</html>

<script type="text/javascript">

Type.registerNamespace('Samples');
Samples.ErrorExample = function(){};
Samples.ErrorExample.prototype =
{
validateNumberRange: function(input, min, max)
{
try
{
// Verify the required parameters were defined.
if (input == undefined)
{
// Throw a standard exception type.
var err = Error.argumentNull("input", "A parameter was undefined.");
throw err;
}
else if (min == undefined)
{
var err = Error.argumentNull("min", "A parameter was undefined.");
throw err;
}
else if (max == undefined)
{
var err = Error.argumentNull("max", "A parameter was undefined.");
throw err;
}
else if (min >= max)
{
var err = Error.invalidOperation("The min parameter must be smaller than max parameter.");
throw err;
}
else if (isNaN(input))
{
msg = "A number was not entered. ";
msg += String.format("Please enter a number between {0} and {1}.", min, max);

var err = Error.create(msg);
throw err;
}
else if (input < min || input > max)
{
msg = "The number entered was outside the acceptable range. ";
msg += String.format("Please enter a number between {0} and {1}.", min, max);

var err = Error.create(msg);
throw err
}

document.write("The number entered was within the acceptable range.");
}
catch(e)
{
// If debug mode then write the exception information to the bottom of the page.
// Otherwise show an alert.
if(debug.isDebug)
{
var errType = e.type;
var msg = "(DEBUG MODE)</p>A CLIENT-SIDE RUNTIME EXCEPTION OCCURED:</p>" + e.message + "</p>Error Type: " + errType;
document.write(msg);
}
else
{
alert(e.message);
}
}
}
}

Samples.ErrorExample.registerClass('Samples.ErrorExample');

var errSample = new Samples.ErrorExample();

var input = undefined;
var min = -10;
var max = 10;

// Result id a thrown ErrorArgumentNull exception with the following Error object message:
// "Sys.ArgumentNullException: A parameter was undefined. Parameter name: input"
errSample.validateNumberRange(input, min, max);

</script>

VB

<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager runat="server" ID="ScriptManager1">
</asp:ScriptManager>
</form>
</body>
</html>

<script type="text/javascript">

Type.registerNamespace('Samples');
Samples.ErrorExample = function(){};
Samples.ErrorExample.prototype =
{
validateNumberRange: function(input, min, max)
{
try
{
// Verify the required parameters were defined.
if (input == undefined)
{
// Throw a standard exception type.
var err = Error.argumentNull("input", "A parameter was undefined.");
throw err;
}
else if (min == undefined)
{
var err = Error.argumentNull("min", "A parameter was undefined.");
throw err;
}
else if (max == undefined)
{
var err = Error.argumentNull("max", "A parameter was undefined.");
throw err;
}
else if (min >= max)
{
var err = Error.invalidOperation("The min parameter must be smaller than max parameter.");
throw err;
}
else if (isNaN(input))
{
msg = "A number was not entered. ";
msg += String.format("Please enter a number between {0} and {1}.", min, max);

var err = Error.create(msg);
throw err;
}
else if (input < min || input > max)
{
msg = "The number entered was outside the acceptable range. ";
msg += String.format("Please enter a number between {0} and {1}.", min, max);

var err = Error.create(msg);
throw err
}

document.write("The number entered was within the acceptable range.");
}
catch(e)
{
// If debug mode then write the exception information to the bottom of the page.
// Otherwise show an alert.
if(debug.isDebug)
{
var errType = e.type;
var msg = "(DEBUG MODE)</p>A CLIENT-SIDE RUNTIME EXCEPTION OCCURED:</p>" + e.message + "</p>Error Type: " + errType;
document.write(msg);
}
else
{
alert(e.message);
}
}
}
}

Samples.ErrorExample.registerClass('Samples.ErrorExample');

var errSample = new Samples.ErrorExample();

var input = undefined;
var min = -10;
var max = 10;

// Result id a thrown ErrorArgumentNull exception with the following Error object message:
// "Sys.ArgumentNullException: A parameter was undefined. Parameter name: input"
errSample.validateNumberRange(input, min, max);

</script>

asp.net 2.0中动态修改页面标题:【上一篇】
初识AJAX:【下一篇】
【相关文章】
  • MsAjax Lib-> Number 类型扩展
  • Ms Ajax Lib-> Object 类型扩展
  • ORA-00600: internal error code, arguments: [4194], [42], [41], [], [], [], [], [] 解决方法
  • MsAjax Lib-> Array.enqueue 函数
  • MsAjax Lib-> Array.dequeue 函数
  • MsAjax Lib-> Array.forEach 函数
  • MsAjax Lib-> Array.indexOf 函数
  • MsAjax Lib-> Array.insert 函数
  • MsAjax Lib-> Array.remove 函数
  • MsAjax Lib-> Array.removeAt 函数
  • 【随机文章】
  • .NET Compact Framework 1.x 下进行UDP通信
  • IIS创建虚拟目录(完整的成功代码)
  • 列出所有9位数,它的前n位能被n整除
  • port/connection hiding
  • 雨絲風片,煙波畫船。。。
  • 第一次自己动手折腾IBM rs/6000
  • [范例代码]简单的自定义Key/Value自定义数据的处理范例,但愿对新手有帮助
  • Excel 重 复 操 作
  • Effective C++之20
  • 淘特ASP木马扫描器,查杀所有ASP木马 !
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.