ClickOnce를 통해 게시하는 WPF 응용 프로그램이 있습니다.게시 후 데이터베이스에 버전 번호 저장
게시 성공 후 데이터베이스에 ClickOnce 버전 번호 (자동 증가)를 저장해야합니다.
게시 후 데이터베이스 작업을 트리거 할 수있는 OnPublishSucces
과 같은 이벤트가 있습니까?
ClickOnce를 통해 게시하는 WPF 응용 프로그램이 있습니다.게시 후 데이터베이스에 버전 번호 저장
게시 성공 후 데이터베이스에 ClickOnce 버전 번호 (자동 증가)를 저장해야합니다.
게시 후 데이터베이스 작업을 트리거 할 수있는 OnPublishSucces
과 같은 이벤트가 있습니까?
나는 몇 시간 동안 이걸로 고민했고 결국 몇 가지 다른 출처의 답변을 함께 패치했다. 이 코드는 csproj 파일의 종료 태그 바로 앞에 있습니다. 게시 이벤트는 IDE를 통해 변경할 수 없습니다. 따라서 대상 이름 = "AfterPublish"는 빌드 이벤트가 아닌 게시 이벤트 후에 만 트리거됩니다. 아래 코드는 응용 프로그램 버전을 포착합니다. 이 명령은 SQLCMD.exe 응용 프로그램을 사용하여 쿼리를 실행합니다.
<Target Name="AfterPublish">
<GetAssemblyIdentity AssemblyFiles="$(TargetPath)">
<Output TaskParameter="Assemblies" ItemName="Targets" />
</GetAssemblyIdentity>
<ItemGroup>
<VersionNumber Include="@(Targets->'%(Version)')" />
</ItemGroup>
<Exec Command=""C:\Program Files\Microsoft SQL Server\100\Tools\Binn\SQLCMD.exe" -S SERVERNAME -U USERNAME -P PASSWORD -d DATABASENAME -Q "UPDATE [TABLENAME] SET [COLUMNNAME] = '@(VersionNumber)'"" />
</Target>
는 분명히 자신의 매개 변수를 대문자 매개 변수를 대체하고 지금까지 큰 따옴표가 SQLCMD의 파일 경로와 쿼리 자체의 주위에이 경우 (명령 따옴표 필요 "를 사용합니다.
희망을 도움이됩니다.