I have a static class in a folder off root in my solution. In that static class' folder, there's a subfolder containing XML files. So I've got these files:
/PartialViews/Header/MyStaticClass.cs
/PartialViews/Header/Config/en-US.xml
/PartialViews/Header/Config/jp-JP.xml
...
I'm having trouble using XDocument.Load()
with those XML files. Specifically, I'm trying to load the XML files from the static constructor of MyStaticClass
.
XDocument.Load()
can't seem to find the files, however. I've tried all these and none work:
static MyStaticClass()
{
XDocument doc;
// These all throw exceptions relating to directory not found
doc = XDocument.Load("/Config/en-US.xml");
doc = XDocument.Load(@"\Config\en-US.xml");
doc = XDocument.Load("/PartialViews/Header/Config/en-US.xml");
doc = XDocument.Load(@"\PartialViews\Header\Config\en-US.xml");
}
I also tried using Assembly.GetExecutingAssembly().Location
and Assembly.GetEntryAssembly().Location
before the relative path, but the assembly resolved by Assembly
is always a .NET library (because the type is being initialized?).
How can I load the file without changing its location in the solution?