.net – Can you have a generic List(of T) in your settings file


In my settings file, I would like to have one setting that is of the type List(of Myclass)…. I can't find anything on the net that does this. Is it possible?

Best Solution

I agree that Meta-Knight's inheritance solution is best, however it is possible to do this by manually editing the setting XML file. In Solution Explorer go to: Solution > Project > Properties > Settings.settings. Right-click on Settings.settings and choose "Open With". Select "XML (Text) Editor". Then insert the following inside <Settings>:

<Setting Name="TestGenericList" Type="System.Collections.Generic.List&lt;int&gt;" Scope="User">
  <Value Profile="(Default)" />

save, and it works.

Unfortunately it doesn't appear to work with generic types requiring two or more types, since the comma is not allowed in that attribute. Even entity-encoding it (&#x002C;) didn't help.

The following causes an error "Illegal characters in path" when you go to edit the settings file in the settings designer:

<Setting Name="TestGenericDictionary" Type="System.Collections.Generic.Dictionary&lt;string&#x002C;string&gt;" Scope="User">
  <Value Profile="(Default)" />