Question: in C# I need to keep data in a dictionary object, looks like:

```
Dictionary<string, Dictionary<string, string>> MyDict = 
    new Dictionary<string, Dictionary<string, string>>();

```

Now I realised, that I would need in some cases some other (not dictionary-like) data as value of the main dict.

Is there any kind of Problem or limitation, if I just instance the main dict. as:

```
Dictionary<string, object> MyDict = new Dictionary<string, object>();

```

in the object field I could put string, dictionary, whatever..

Thanks in advance,
Best regards, Steven

Answer: 
You'll loose strong types and all their benefits.

Can you not create a new class that has a Dictionary property and add your other data to it:

```
public class CallItWhatYouLike
{
  public Dictionary<string, string> Dictionary {get; set;}
  public int AnotherProperty {get; set;}
  ...
}

var MyDict = new Dictionary<string, CallItWhatYouLike>();

```
No, there's no problem. If you need to type the value as `Dictionary<string, string>` just cast it and you'll have this solved.