Today my code suddenly give this error if when I try to access setting in my program.
Some people said I need to put my namespace before Properties.Settings
so it would be <namespace>.Properties.Settings.
I tried to do that but my name space does not contain "Properties". So I checked the generated code under Properties-->Settings.Settings-->Settings.Designer.cs, I can see the setting class do use namespace "<namespace>.Properties", like below
namespace Shopping.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "8.0.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
I finally foind the root cause, It have been caused by a class it is using same name of the namespace, in my job, a class name is "Shopping" and its namespace name is also "Shopping". So it is sort of collision to Framework.
After I renamed Shopping class to something else, the issue is fixed.
Following article from Eric Lippert’s Blog should be helpful.
Do not name a class the same as its namespace
http://blogs.msdn.com/b/ericlippert/archive/2010/03/09/do-not-name-a-class-the-same-as-its-namespace-part-one.aspx