G
Guest
I developed a WindowsForms application that i want to distribute with
ClickOnce.
I usually develop my applications with a three-layer structure:
Presentation, BusinessLogic, DataAccess. So far I have always put them in
seperate projects.
In VisualStudio2005 I found out that I can have a config-file in the
BusinessLayer and reach it with typed properties through the My.Settings
object. This is really nice since most config values are used in the Business
layer!
The problem arises when I want to use the inbuilt ClickOnce publishing
wizard. It will not include the config file of the Business project. If I
copy the config file manually and rename it, then everything works fine, so
distribution is the missing part here.
So what do you recommend:
1) Is there a way to force the wizard to include a specific file in the
manifest?
2) Should I use MageUI.exe to create manual manifests? I really want to
avoid this since it is seems quite complicated.
3) I tried to reach the My.Settings of the Presentation layer from the
Business layer, but only succeeded to retrieve it with GetRawXML which gets
quite complicated and untyped. Is there a better way that you know?
4) Should I skip the My.Settings typed properties and go for the old style
appSettings which means BusinessLayer can reach values in the Presentation
config?
5) Should I avoid the whole problem by populating a BusinessLayer Settings
object from the Presentation layer on application start?
6) Should I restructure my code and put all classes in the same project,
only separating them with namespaces and seperate folders? That means the
My.Settings object would be reachable all over. In this particular
application there is really no need for seperate DLL-files.
Any suggestions from all you experts out there?
ClickOnce.
I usually develop my applications with a three-layer structure:
Presentation, BusinessLogic, DataAccess. So far I have always put them in
seperate projects.
In VisualStudio2005 I found out that I can have a config-file in the
BusinessLayer and reach it with typed properties through the My.Settings
object. This is really nice since most config values are used in the Business
layer!
The problem arises when I want to use the inbuilt ClickOnce publishing
wizard. It will not include the config file of the Business project. If I
copy the config file manually and rename it, then everything works fine, so
distribution is the missing part here.
So what do you recommend:
1) Is there a way to force the wizard to include a specific file in the
manifest?
2) Should I use MageUI.exe to create manual manifests? I really want to
avoid this since it is seems quite complicated.
3) I tried to reach the My.Settings of the Presentation layer from the
Business layer, but only succeeded to retrieve it with GetRawXML which gets
quite complicated and untyped. Is there a better way that you know?
4) Should I skip the My.Settings typed properties and go for the old style
appSettings which means BusinessLayer can reach values in the Presentation
config?
5) Should I avoid the whole problem by populating a BusinessLayer Settings
object from the Presentation layer on application start?
6) Should I restructure my code and put all classes in the same project,
only separating them with namespaces and seperate folders? That means the
My.Settings object would be reachable all over. In this particular
application there is really no need for seperate DLL-files.
Any suggestions from all you experts out there?