Hi I have deployed a clickonce application, in my application i have 10 external dlls. Since the code inside my dll files keeps changing and it's tough to redistribute i went with clickonce deployment strategy. But i wanted to know a thing, if i make a change to one of the dll files and upgrade it's assembly version from 1.0.0.0 to 1.0.0.1, but do not change the publish version, it still is 1.0.0.0. Also i have set the update setting to be before application loads. I re ran the setup deployment but it did not run the updated assembly. What is wrong? I'm using VS2008 and C#.NET 2.0
views:
1000answers:
2ClickOnce only cares about publish version for the whole project. Increment this in your "My Project" Publish tab and publish again.
I want to add to Tom's answer.
He is correct, ClickOnce only cares about the publish version for the project. However, once your application is started on a client's machine and it recognizes it's not the latest version, it starts comparing the file hashes from the application manifest (the application manifest is the one without the ".application" extension...go figure). Therefore, it only downloads files that have changed; yes, a recompile with no code changes is still a change.
And one final note. The download progress bar that appears when a client is downloading the latest version always shows the entire size of your application. However, rest assured that it is only downloading the changed files. I've done testing with a bandwidth monitor to confirm it.