0
我的C#控制檯應用程序嵌入了MS SQL Server Compact數據庫(.sdf文件)。當安裝新版本的應用程序時,該文件必須覆蓋而不是。ClickOnce和SQL Server Compact數據庫
.sdf→文件屬性→構建動作:應該選擇哪個值?選項包括None,Compile,Content,Embedded Resource,EntityDeploy,ApplicationDefinition,Page,Resource,SplashScreen,DesignData,DesignDataWithDesignTimeCreatableData和XamlAppDef。
我認爲複製到輸出目錄是決定構建時間的東西。我需要的是將ClickOnce setup.exe配置爲僅在不存在時才安裝.sdf ...軟件更新不得覆蓋它。可能嗎?怎麼樣? – haba713
鑑於「複製文件,如果它不存在」不是一個選項,你最好的選擇是將其設置爲「總是複製」到設備上的臨時位置或文件名,然後讓你的C#代碼來測試if .sdf文件已存在,如果不存在,請將.sdf文件複製到適當的位置。我不知道,我知道。 –
好的!連接字符串是'Data Source = | DataDirectory | \ MyDb.sdf'。因此,我將項目文件'MyDb.sbf'重命名爲'MyDbEmpty.sdf',並在'Progam.Main()'的開始處檢查'ApplicationDeployment.CurrentDeployment.DataDirectory'中是否存在'MyDb.sdf'文件,並且如果* not *,則將'MyDbEmpty.sdf'複製到'MyDb.sdf'。在VS調試運行中訪問'ApplicationDeployment.CurrentDeployment.DataDirectory'會引發異常並且必須處理它。 Mike Gledhill,感謝您的幫助! – haba713