Giriş
Şu satırı dahil ederiz.
Kendi assembly'miz içindeki (yani Resources dizini altındaki .resx dosyasına) nesneye şöyle erişiriz.
MyAssembly içinde Lang dizini altında langres.resx dosyası olsun. Bu dosyayı yükleyip kullanabilmek için ResourceManager sınıfına verilen resx dosyasının şekli şöyledir: "MyAssembly.Lang.langres".
Şöyle yaparız.
Şöyle yaparız.
Şöyle yaparız
Properties.Resources ile aynı şekilde çalışıyor.
Şu satırı dahil ederiz.
using System.Resources;
ConstructorKendi assembly'miz içindeki (yani Resources dizini altındaki .resx dosyasına) nesneye şöyle erişiriz.
Resources.ResourceManager
Constructor - resx + assembly (bir başka assembly)MyAssembly içinde Lang dizini altında langres.resx dosyası olsun. Bu dosyayı yükleyip kullanabilmek için ResourceManager sınıfına verilen resx dosyasının şekli şöyledir: "MyAssembly.Lang.langres".
Assembly assembly = ...
var namespaceName = Path.GetFileNameWithoutExtension(assembly.CodeBase);
namespaceName = namespaceName + ".Properties.Resources";
new ResourceManager(namespaceName, assembly);
Bazen assembly o assembly içindeki bir tipi kullanarak kolayca şöyle bulunur.ResourceManager rm = new ResourceManager("YourRootNamespace.YourResourceFileName",
GetType().Assembly);
GetObject metoduŞöyle yaparız.
Image myImage = (Image)(rm.GetObject("ImageNameInResourceFile"));
GetStream metoduŞöyle yaparız
string documents = "one";
var unmanagedMemoryStream = Resources.ResourceManager.GetStream(document);
var memoryStream = new MemoryStream();
unmanagedMemoryStream.CopyTo(memoryStream);
memoryStream.Position = 0;
byte[] bytes = memoryStream.ToArray();
GetString metoduProperties.Resources ile aynı şekilde çalışıyor.
private static class CountryHelper
{
private static ResourceManager rm;
static CountryHelper()
{
rm = new ResourceManager("Countries", typeof(CountryHelper).Assembly);
}
public static Country GetByCode(string code)
{
string countryName = rm.GetString(code + ".EnglishName");
return new Country { Code = code, EnglishName = countryName };
}
}
Hiç yorum yok:
Yorum Gönder