zoukankan      html  css  js  c++  java
  • jQuery显示SQL存储过程自定义异常信息

    学习MVC应用开发,改变了Insus.NET以前ASP.NET的开发习惯,以前开发均是服务器端,而现在使用jQuery的Ajax在实现。想到与考虑了很多问题,也遇上很多问题,一些解决了,一些还留下,望能一一把它们解决。

    就如这个问题《Internal Server Errorhttp://www.cnblogs.com/insus/p/3418942.html 让Insus.NET印象深刻,自己解决它,花上了Insus.NET不少的时间。

    今天的博文,Insus.NET就是分享一下更好的解决方案,把这个服务端的异常或是在存储程自定义的异常,能在jQuery的Ajax显示出来。

    回来头来,看看这里《MVC会员注册http://www.cnblogs.com/insus/p/3439599.html 在存储过程[dbo].[usp_Member_Register]会看到自定义异常信息,判断帐号是否有被注册:

    IF EXISTS(SELECT TOP 1 1 FROM [dbo].[Member] WHERE [Account] = @Account)
    BEGIN
        RAISERROR(N'此帐号[%s]已经注册,请更改再重新注册。',16,1,@Account)
        RETURN
    END


    Ok,稍后我们就需这个自定义的异常信息throw至jQuery上。

    打开练习的专案,找到以前写好js类库《创建自己的共用js库http://www.cnblogs.com/insus/p/3427673.html 添加两个扩展方法:



    然后,打开需要引用此js库的View视图,如Member/Register.cshtml:


    然后修改jQuery代码,Comment out :

    alert(errorThrown);


    添加箭头一句:

    下面的实时演示中,Insus.NET有尝试测了已经被注册的用户,它有正常显示出存储过程的自定义异常信息。另外还测试了,把存储过程删除了,它也能提示找不到存储过程。最后Insus.NET重新建哪个存储过程,它又能正常运用了。


     

  • 相关阅读:
    NET 事件与委托
    NET高级 REF OUT
    缓冲池
    NET高级 EQUAL相等
    装箱拆箱
    CTS、CLS、CLR
    结构体及引用类型
    NET高级-深拷贝浅拷贝
    密闭类 静态 类及扩展方法
    NET高级-索引器
  • 原文地址:https://www.cnblogs.com/insus/p/3463685.html
Copyright © 2011-2022 走看看