首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当我从C#调用存储过程时,它会抛出一个异常

当我从C#调用存储过程时,它会抛出一个异常
EN

Stack Overflow用户
提问于 2016-09-28 07:26:17
回答 1查看 179关注 0票数 0
代码语言:javascript
复制
CREATE PROCEDURE GetDatabaseBackup
AS
BEGIN
    DECLARE @MyFileName varchar(1000)

    SELECT 
       @MyFileName= 'D:\DATABASE-BACKUP\genxMultiERPLive -' +      
              REPLACE(convert(nvarchar(20),GetDate(),120),':','-') + '.bak'

    BACKUP DATABASE genxMultiERPLive 
    TO DISK = @MyFileName   
END
GO

这是我的存储过程。当我执行这个存储过程时,它工作得很好。当我在C#代码中使用数据库对象调用时,它会抛出一个异常。

代码语言:javascript
复制
public bool DataBaseBackup()
{
    int obj = _dbContext.GetDatabaseBackup();

    if (obj != 0)
    {
        return true;
    }

    return  false;
} 

_dbContext是我的数据库的对象。

例外是:

无法在事务中执行备份或还原操作。 备份数据库正在异常终止。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-28 07:32:00

应将调用存储过程的行更改为

int obj= _dbContext.GetDatBaseBackup(); To

_dbContext.Database.ExecuteSqlCommand(TransactionalBehavior.DoNotEnsureTransaction,"GetDatBaseBackup");

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39740726

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档