2017-10-10 12 views
0

asp.net mvc 웹 응용 프로그램에서 SQL Server 에이전트 작업을 시작하는 방법을 알아 내려면 도움이 필요합니다. 작업은 버튼 클릭만으로 시작해야합니다. 그것을하는 올바른 방법은 무엇입니까?asp.net mvc 4 웹 응용 프로그램에서 SQL 작업 실행

방금 ​​hangfire를 설치했고 구성하려고했지만 다음 코드가 붙어 있습니다. 나는 올바른 길을 가고 있는가?

모든 리드가 도움이 될 것입니다. 감사.

public class MyController : Controller 
{  
public void ExecJob(int Id) 
    { 
    BackgroundJob.Enqueue(() => UpdateDB(Id)); 
    } 

public void UpdateDB(Id) 
    { 
    //how to start the sql job 
    } 
} 
+0

"SQL 작업"은 무엇을 의미합니까? 저장 프로 시저를 실행하거나 실제 SQL Server 에이전트 작업을 실행한다는 의미입니까? – STLDeveloper

+0

나는 최선의 방법은 SQL 서버 작업을 호출하는 저장 프로 시저를 작성하는 것이라고 생각한다. 웹 사이트를 실행하는 계정의 "ID"는 SQL Server 작업을 시작할 수 있는지 테스트해야합니다. 추신 : Quartz.Net과 같은 것을 배우는 것이 빠를수록 SQL Server 작업을 통해 모든 것을 퍼지하려고 노력하는 것이 좋습니다. – granadaCoder

+0

@STLDeveloper : SQL Server 에이전트 작업 – newbie

답변

0

당신은 버튼 클릭으로 웹 응용 프로그램에서 저장 프로 시저를 실행할 수 있습니다

저장 프로 시저 :

CREATE PROCEDURE RunJob 
     @JobName NVARCHAR(100) 
    AS 
    BEGIN 
     -- SET NOCOUNT ON added to prevent extra result sets from 
     -- interfering with SELECT statements. 
     SET NOCOUNT ON; 

     EXEC msdb.dbo.sp_start_job @JobName 
    END 
    GO 

가 데이터베이스에이 저장 프로 시저를 작성하고 같은 작업 이름을 전달 매개 변수를 사용하거나 다른 SQL 작업이 우발적으로 실행되지 않도록 저장 프로 시저에서 작업 이름을 하드 코드 할 수 있습니다.