Solved

AppSetting in C# in WinForm App

Posted on 2009-07-12
8
1,720 Views
Last Modified: 2013-12-17
I'm doing something stupid, but can't see it.

Trying to read a configuration value out of app settings. File is:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
      <configSections>
  <sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
   <section name="CSharpPushKDX.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
  </sectionGroup>
 </configSections>
 <applicationSettings>
  <CSharpPushKDX.Properties.Settings>
   <setting name="LogFilePath" serializeAs="String">
    <value>C:\Saros\SarosNet35\PushKDX\PushKDX\PushKDX%d%.log</value>
   </setting>
  </CSharpPushKDX.Properties.Settings>
 </applicationSettings>
</configuration>

Code is:

            string lsAnswer = "";
            try
            {
                lsAnswer = System.Configuration.ConfigurationManager.AppSettings.Get("LogFilePath");
                lsAnswer = System.Configuration.ConfigurationManager.AppSettings["LogFilePath"];
                lsAnswer = ConfigurationSettings.AppSettings["LogFilePath"];
            }
            catch
            {
                lsAnswer = "";
            }

Note that I have tried to get the desired value three different ways. All return null.

I'm trying to switch over from VB.NET to c# with this project, so I expect some dumb translation issue.

Thanks...
0
Comment
Question by:kwebster7327
  • 4
  • 3
8 Comments
 
LVL 3

Expert Comment

by:eirikurh
ID: 24835774
try
string lsAnswer = Properties.Settings.Default.LogFilePath
0
 
LVL 6

Expert Comment

by:microbolt
ID: 24835780
Try it like this:

lsAnswer = Properties.Settings.Default.LogFilePath
0
 
LVL 1

Author Comment

by:kwebster7327
ID: 24835843
The name 'Properties' does not exist in the current context.
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 6

Accepted Solution

by:
microbolt earned 500 total points
ID: 24835875
Make sure there there are no namespace issues. The fully qualified name of the Resources class would be YourProject.Properties.Resources, so if something has caused the Form to be placed in a different namespace from your Properties class, you would need to use the fully qualified name to access it from the form. Use the Object Browser to browse your solution and figure out what the namespace of your Properties class is.
0
 
LVL 1

Author Comment

by:kwebster7327
ID: 24836607
Close! If I move it back into the main namespace, it. works.

I'm trying to make this part of a general-purpose, reusable function, so I guess I'll need to figure out how to pass the namespace name into it?

Also, this references the default value of the parameter. If the value gets changed after deployment, will that new value get picked up or will we always get the default?

Thanks...
0
 
LVL 6

Expert Comment

by:microbolt
ID: 24836944
You can just Import the main namespace at the top of your file and it should work as well.  Then when you use it in multiple projects just change the Import at the top.
0
 
LVL 1

Author Comment

by:kwebster7327
ID: 24839565
Assume you me "using" instead of "imports" - this is C#.

0
 
LVL 6

Expert Comment

by:microbolt
ID: 24844601
Yep, had an brain fart =D
0

Featured Post

MIM Survival Guide for Service Desk Managers

Major incidents can send mastered service desk processes into disorder. Systems and tools produce the data needed to resolve these incidents, but your challenge is getting that information to the right people fast. Check out the Survival Guide and begin bringing order to chaos.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Calculating holidays and working days is a function that is often needed yet it is not one found within the Framework. This article presents one approach to building a working-day calculator for use in .NET.
Real-time is more about the business, not the technology. In day-to-day life, to make real-time decisions like buying or investing, business needs the latest information(e.g. Gold Rate/Stock Rate). Unlike traditional days, you need not wait for a fe…
In a recent question (https://www.experts-exchange.com/questions/29004105/Run-AutoHotkey-script-directly-from-Notepad.html) here at Experts Exchange, a member asked how to run an AutoHotkey script (.AHK) directly from Notepad++ (aka NPP). This video…
Attackers love to prey on accounts that have privileges. Reducing privileged accounts and protecting privileged accounts therefore is paramount. Users, groups, and service accounts need to be protected to help protect the entire Active Directory …

685 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question