Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Accessing resx file from another project / assembly

Tags:

c#

resources

I have a resource file in a different project and want to access eg. strings from it. How can i do this?

like image 425
Sys Avatar asked Feb 02 '11 11:02

Sys


People also ask

How do I read a RESX file?

To start with, you need to create a web application. Here, I am using Visual Studio 2012 and C# as the language. Once you created the application, you need to create a RESX file by clicking the “New Item”. Now you can see a new file in your solution explorer named Resource1.

Do RESX files need to be deployed?

You do not need to deploy . resx file with your application.

Are RESX files compiled?

resx files are compiled into binary . resources files.


1 Answers

This is a super old question, but since it has not been answered and I just stumbled upon this problem, here are some possible solutions:

Make sure that the access modifier of the resx is set to public!

Link to the resx file

See here

Then you either acces the string directly with

var translatedString = Resources.NAME_OF_THE_STRING_IN_RESX_FILE;

or via ResourceManager

var resourceManager = new ResourceManager("FULLY.QUALIFIED.NAMESPACE.NO.EXTENSION", Assembly.GetExecutingAssembly());
var translatedString = resourceManager.GetString("NAME_OF_THE_STRING_IN_RESX_FILE");

Direct access when you have a reference to the project

var translatedString = [FULLY.QUALIFIED.NAMESPACE.NO.EXTENSION].NAME_OF_THE_STRING_IN_RESX_FILE;
like image 94
Fabian Avatar answered Sep 30 '22 15:09

Fabian