I don't know if the title is clear enough, but what I'm basically asking is help with the organization of Resources in an application. Like, how do you go about doing that in YOUR applications?

So, when a project is created in Visual Studio, we got like a bunch of folders. What I'm wondering is, for example, if I want to organize all the image files I'll use for the application, would I put that in MyAppName\MyAppName\bin\Debug\Images ('Images' folder I create after the creation of the project). My question, obviously, extends to other types of resources like, say, 'Languages.'

I know this question might sound stupid to your ears, but these things kind of matter to me and I'd like to know how each one of you does it.

Well you need to decide what resources you want to organise as a sub-task of resource organisation itself.

So for example; You have language resources, image resources, audio resources etc.

So do you want to organise those by type (Images, Language, Audio) or by Language (Language/Images, Language/Text, Language/Audio) or any other similar context.

How you do this should depend on how deep or wide you want your organisation to be. So if you have 10 languages that all had only a single resource each, then arranging it by language first, may be a bit unweildly. But this is personal choice, no right or wrong way to do it.

Typically speaking, I have "Tall" organisation because I have many files of few different types.

If you wanted to go for a "tall thin" organisation, if you had any regional specific images, you would generally include the country code on the resource name.

An example would be your language files. You would call these: "StatusMessages_en, StatusMessages_de" etc. Then in your code, you can pick up the country code from your CurrentCulture and adjust the resource file you use in a pattern similar to StatusMessages_{0} where {0} is your country code.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.