ASP.NET는 어떻게 catch 저장 과정 중 던진 이상 정보를 저장합니까
12554 단어 asp.net
자료 라이브러리를 수정할 때 우리는 입력한 자료가 비어 있을 수 없고 자료가 이미 존재하거나 다른 표의 자료와 관련되어 삭제할 수 없다는 판정을 해야 한다.
입력한 자료는 비워둘 수 없다. 이런 것들은 모두 논리층에 의해 직접 처리된다. 자료가 이미 존재하고 관련이 있다. 이 부분은 데이터층에 집행하도록 추천하지만 어떻게 제시 정보를 되돌려 사용자에게 제시합니까?catch는 좋은 선택이야!
자료를 추가할 때'Sql = Insert into [table Name]values(....)와 유사하지 마십시오."이런 처리는 저장 프로세스를 직접 호출하면 된다. 저장 프로세스의 이름이 [test prc]라고 가정하면 된다.
그러면 코드는 다음과 같습니다.
1 CREATE PROCEDURE [dbo].[test_prc](
2 @formNo nvarchar(20), --
3 @formName nvarchar(10) --
4 )
5 AS
6 BEGIN
7 declare
8
9 @Error_Msg nvarchar(200)
10
11 --
12 IF ISNULL(@formNo,'')='' or ISNULL(@formName,'')=''
13 BEGIN
14 set @Error_Msg = ' 、 '
15 RAISERROR(@Error_Msg,16,1) WITH NOWAIT
16 return 1
17 END
18
19 --
20 IF exists (select 1 from [tableName] where formNo=@formNo and formName=@formName)
21 BEGIN
22 set @Error_Msg = ' '+@formNo+', '+@formName+' , '
23 RAISERROR(@Error_Msg,16,1) WITH NOWAIT
24 return 1
25 END
26
27
28 --
29 INSERT INTO [tableName]
30 ([formNo]
31 ,[formName]
32 )
33 VALUES
34 (@formNo
35 ,@formName
36 )
37 END
상기 코드가 생기면 프로그램에서try를 사용합니다.catch는 다음과 같은 예외 정보를 캡처합니다.
1 #region
2 /// <summary>
3 ///
4 /// </summary>
5 /// <param name="formNo"> </param>
6 /// <param name="formName"> </param>
7 /// <returns></returns>
8 public bool Do_Process_Add_Info(string formNo, string formName)
9 {
10 bool result = true;
11 SqlParameter[] oSqlParameter =
12 {
13 new SqlParameter("@formNo",SqlDbType.NVarChar,20) ,
14 new SqlParameter("@formName",SqlDbType.NVarChar,10)
15 };
16 try
17 {
18 //
19 oSqlParameter[0].Value = formNo;
20 oSqlParameter[1].Value = formName;
21
22 sqlHelper.SP_ExecuteNonQuery("test_prc", oSqlParameter); //sqlHelper !
23 }
24 catch (Exception err)
25 {
26 result = false;
27 System.Windows.Forms.MessageBox.Show(err.Message);
28 //
29 //Response.Write(err.Message);
30 }
31 return result;
32 }
자, 이렇게 해서 이 Do 만 호출하면Process_Add_Info(string form No,string form Name) 방법만 있으면 됩니다. 코드 논리는 수정할 필요가 없습니다. 모든 힌트가 있을 것입니다. 허허.촉발기 위에서 이렇게 할 수 있을지 모르겠군, 허허.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
작업 중 문제 해결 - (win 2003 asp. net) Session 과 페이지 전송 방법 으로 해결 방안 을 정상적으로 사용 할 수 없습니다.또한 F 는 처음에 우리 의 BP & IT 프로젝트 팀 이 Forms 폼 검증 을 사용 했다 고 판단 할 수 있 습 니 다. 페이지 를 뛰 어 넘 는 것 은http://hr.bingjun.cc/MyTask/MyTas...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.