0
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#コードでデータベースのオブジェクトを呼び出すと、例外がスローされます。C#からストアドプロシージャを呼び出すと、例外がスローされます
public bool DataBaseBackup()
{
int obj = _dbContext.GetDatabaseBackup();
if (obj != 0)
{
return true;
}
return false;
}
_dbContext
は、私のデータベースデータベースにあります。
例外は次のとおりです。
は、バックアップを実行するか、トランザクション内での操作を復元することはできません。
BACKUP DATABASEが異常終了しています。
い '_dbContext.GetDatBaseBackup()'を使用トランザクションに
int obj= _dbContext.GetDatBaseBackup();
からストアドプロシージャを呼び出す行を変更する必要がありますか? –私はEFがすぐに取引を使用すると思います。 それが本当であれば、この手続きを特にTransaactionの外で呼び出す方法を工夫する必要があります。つまり、それが間違っていることに気づいています。 Haitham Shaddadがあなたのために解決策を投稿したようです。 – AntDC