4
Nlog와 데이터베이스 대상을 사용하면 런타임에 연결 정보를 설정할 수 있습니까?Nlog 대상 데이터베이스가 런타임에 연결 정보를 설정합니다.
Nlog와 데이터베이스 대상을 사용하면 런타임에 연결 정보를 설정할 수 있습니까?Nlog 대상 데이터베이스가 런타임에 연결 정보를 설정합니다.
저는 비슷한 일을하는 동료 몇 명을 기억합니다. 그는이 답변을 찾았습니다 : http://nlog-forum.1685105.n2.nabble.com/DDL-for-Database-Table-How-to-set-Connection-String-Programmatically-td5241103.html 그것은 완벽하게 정상적으로 작동하고있었습니다. 최우선 연결 문자열의
가장 쉬운 방법은 위의 링크에서
이 GDC 사용하는 것입니다 : 코드에서 이제
<target name="db" type="Database" connectionString="${gdc:myConnectionstring}" ... />
당신은 간단하게 수행 할 수 있습니다
GDC.Set("myConnectionString", "Server=.;database=.....");
또한 대상을 수정할 수 있습니다 : 나는 그것을 찾을 수없는 이유를
var config = LogManager.Configuration;
var dbTarget = (DatabaseTarget)config.FindTargetByName("db");
dbTarget.ConnectionString = "server=.;...";
LogManager.ReconfigExistingLoggers();
감사합니다, 나는 모른다. – Gratzy
dbProvider를 프로그래밍 방식으로 변경하고 나중에 LogManager.ReconfigExistingLoggers를 호출하면 연결 문자열이 성공적으로 변경되지만 작동하지 않습니다. 버그인지 기능인지 확실하지 않습니다. – Feyyaz