小编Rae*_*leh的帖子

在C#中捕获SQL引发错误

我在SQL过程中生成raise错误:

RAISERROR('Already exist',-10,-10)

但我无法在C#中使用以下代码捕获它

catch (SqlException ex)
{
    bResult = false;                   
    if (ex.Errors[0].Number == -10)
    {
        CommonTools.vAddToLog("bInsertNewUser", "ManageUsers", ex.Message);
        if ((savePoint != null))
            savePoint.Rollback();
    }
} 
Run Code Online (Sandbox Code Playgroud)

如何捕获C#中引发的错误?

c# sql-server raiserror

23
推荐指数
2
解决办法
3万
查看次数

Response.End()和CompleteRequest()

什么是优势和劣势的每一个Response.End()CompleteRequest()?我应该在哪里和不应该使用它们?我找了这个问题,但我没有得到正确答案.

c# response request

15
推荐指数
1
解决办法
2万
查看次数

从 Amazon s3 流读取文本

我使用以下代码从 Amazon S3 读取文本文件,并逐行处理它。这段代码可以工作,但问题是速度很慢。

 GetObjectRequest getObjRequest = new GetObjectRequest()
    .WithBucketName(amazonSettings.BucketName)
    .WithKey(_fileKey);
using (AmazonS3 client = AWSClientFactory.CreateAmazonS3Client(
    amazonSettings.AccessKey, 
    amazonSettings.SecretAccessKey))
using (GetObjectResponse getObjRespone = client.GetObject(getObjRequest))
using (Stream amazonStream = getObjRespone.ResponseStream)
{                        
    StreamReader amazonStreamReader = new StreamReader(amazonStream);
    tempGsContact = new GSContact();
    while ((_fileLine = amazonStreamReader.ReadLine()) != null)
    {
        if (_fileLine.Equals("END:VCARD"))
        {
            // Make process 1
        }
        else if (!_fileLine.Equals(string.Empty))
        {
            //Make process 2
        }
    }                        
}
Run Code Online (Sandbox Code Playgroud)

问题是:我能否得到更充分的方式来降低时间成本?

c# readline amazon-s3 streamreader readfile

7
推荐指数
1
解决办法
2万
查看次数

javascript ondrop事件

我在JavaScript中使用drop事件使用以下代码上传文件:

var fileName = event.dataTransfer.files[0].name;            
var orgValue = document.getElementById('<%=tbfilesCollections.ClientID%>').value;
if (orgValue == 'undefined') {
    orgValue = '';
}
orgValue += orgValue == '' ? '' : '\n';
orgValue += "*" + fileName;
document.getElementById('<%=tbfilesCollections.ClientID%>').value = orgValue;
event.preventDefault();
return false;
Run Code Online (Sandbox Code Playgroud)

但是这段代码只获取文件名...我需要获取文件的完整路径.

javascript

6
推荐指数
1
解决办法
1125
查看次数

从函数返回错误消息的最佳方法是什么?

如果遇到逻辑错误错误(Expired user, invalid ID),那么从以下方面告诉父方法此错误的最佳方法是什么:

1-抛出自定义异常,如下所示:

 try
{
//if (ID doesn't match) then 
Throw new CustomException(-1,"ID doesn't match");
}
catch(CustomException ex)
{
throw ex
}
catch(Exception ex)
{
throw new CustomException(ex.ErrorCode,ex.message);
}
Run Code Online (Sandbox Code Playgroud)

2-返回错误消息和代码如:

//if (ID doesn't match) then 
This.ErrorCode= -1;
This.Message= "ID doesn't match";
Run Code Online (Sandbox Code Playgroud)

.net c#

6
推荐指数
1
解决办法
1万
查看次数

如果和多个查询,MySql存储过程

在以下存储过程中,我遇到了一个错误:

DROP PROCEDURE IF EXISTS `SP_DeleteFileInfo`;
CREATE  PROCEDURE `SP_DeleteFileInfo`(pFileID int)
Set @FileRef= null;
select filesinfo.ReferenceID into @FileRef FROM filesinfo where filesinfo.FileID =pFileID;
DELETE From filesinfo
WHERE filesinfo.FileID= pFileID;
IF EXISTS(SELECT * from filesrefrences where filesrefrences.ReferenceID= @FileRef and filesrefrences.RefrenceCount>1) then 
    update filesrefrences
    set 
        filesrefrences.RefrenceCount= filesrefrences.RefrenceCount-1
    where 
        filesrefrences.ReferenceID= @FileRef;
    SELECT @FileRef;
ELSE IF(@FileRef is Not NULL) THEN
    DELETE from filesrefrences WHERE filesrefrences.ReferenceID = @FileRef;
    SELECT -77;
ELSE
    SELECT -99;
end if;
Run Code Online (Sandbox Code Playgroud)

遇到的错误是:

[SQL]
 select filesinfo.ReferenceID into @FileRef FROM filesinfo where filesinfo.FileID =pFileID; …
Run Code Online (Sandbox Code Playgroud)

mysql stored-procedures navicat

5
推荐指数
2
解决办法
3万
查看次数

MySql::存储过程递归

我如何重写以下 SP 来面对 MySQL 中的递归限制:

CREATE DEFINER = `root`@`localhost` PROCEDURE `SP_DeleteParentDirectory`(pParentID INT,pIsFolder INT,pReferenceID INT)
BEGIN   
SET @@SESSION.max_sp_recursion_depth = 255;
    SET @IsFolder= NULL;
    SET @ChildID= NULL;
    SET @ReferenceID= NULL;
    IF ( pIsFolder= 2) THEN
                SELECT  FileID INTO @ChildID FROM filesinfo WHERE ParentID= pParentID LIMIT 1;
                WHILE (@ChildID IS NOT NULL) DO
                         SELECT  filesinfo.IsFolder,filesinfo.ReferenceID INTO @IsFolder,@ReferenceID FROM filesinfo WHERE filesinfo.FileID = @ChildID;
                        CALL SP_DeleteParentDirectory(@ChildID,@IsFolder,@ReferenceID);             
                        SELECT filesinfo.FileID INTO @ChildID FROM filesinfo WHERE ParentID= pParentID LIMIT 1;
                END While;
    END IF;
    DELETE FROM filesinfo …
Run Code Online (Sandbox Code Playgroud)

mysql recursion stored-procedures

5
推荐指数
1
解决办法
9841
查看次数

'response.clear()'删除内容和标题?

我需要知道是否Response.Clear()只是清除内容还是删除标题?换句话说,如果我使用Response.Clear(),我是否还需要使用Response.ClearHeader()

asp.net response c#-4.0

4
推荐指数
1
解决办法
5395
查看次数

尝试处理异常时命令catch块

try
{
    // throws IOException
}
catch(Exception e)
{
}
catch(IOException e)
{
}
Run Code Online (Sandbox Code Playgroud)

try块抛出时IOException,它将调用第一个catch块而不是第二个块.任何人都可以解释这一点.为什么它会调用第catch一块?

c# exception try-catch

4
推荐指数
2
解决办法
6208
查看次数

安装服务器到服务器2012

我使用.net 4.0 c#开发了新服务,我现在要安装到不包含visual studio命令promot和installUtil.exe的托管服务器.如何将服务安装到服务器?需要安装VS版本吗?

.net c# windows-services windows-server-2012

4
推荐指数
2
解决办法
5102
查看次数