2017-04-04 4 views
0

나는 SQL SERVER 2016 DB에 연결하는 ASP.Net Core 응용 프로그램이 있습니다.
응용 프로그램이 테이블을 업데이트하고 로깅 트리거를 발생시킵니다.응용 프로그램에 의해 트리거 된 HOST_NAME()을 선택하면 빈 문자열이 반환됩니다.

트리거 로그의 항목 중 하나는 HOST_NAME()입니다.
트리거가 SSMS (SQL Server Management Studio)를 사용하여 수동으로 실행될 때마다 트리거가 예상대로 작동합니다.
그러나 응용 프로그램에서 트리거가 실행될 때마다 HOST_NAME() 함수는 빈 문자열을 로깅 테이블에 기록합니다.

코드를 통해 명시 적으로 설정해야합니까? 내가 빠진 것이 있습니까?

감사합니다.

답변

2

HOST_NAME()은 에 Workstation ID으로 제공된 것으로보고합니다. 그래서 연결 문자열을 변경하십시오. (서버가 거짓말을한다는 것은 매우 쉽게 알고 있으므로 보안 결정을 내리기 위해 HOST_NAME()에 의존하지 마십시오)

+0

감사합니다. 단지 'WSID' 매개 변수를 설정했습니다. Enviornment.MachineName'에 대한 연결 문자열 (링크에서 가져온 문자열). – DotnetProg