{
internal class WebEncoding
{
- static public Encoding FileEncoding {
+#if NET_2_0
+ static bool cached;
+ static GlobalizationSection sect;
+ static GlobalizationSection GlobalizationConfig {
get {
- GlobalizationConfiguration gc = GlobalizationConfiguration.GetInstance (null);
- if (gc == null)
- return Encoding.Default;
+ if (!cached) {
+ try {
+ sect = (GlobalizationSection) WebConfigurationManager.GetWebApplicationSection ("system.web/globalization");
+ }
+ catch { }
+ cached = true;
+ }
+ return sect;
+ }
+ }
+#else
+ static GlobalizationConfiguration GlobalizationConfig {
+ get {
+ return GlobalizationConfiguration.GetInstance (null);
+ }
+ }
+#endif
- return gc.FileEncoding;
+ static public Encoding FileEncoding {
+ get {
+ return GlobalizationConfig != null ? GlobalizationConfig.FileEncoding : Encoding.Default;
}
}
static public Encoding ResponseEncoding {
get {
- GlobalizationConfiguration gc = GlobalizationConfiguration.GetInstance (null);
- if (gc == null)
- return Encoding.Default;
-
- return gc.ResponseEncoding;
+ return GlobalizationConfig != null ? GlobalizationConfig.ResponseEncoding : Encoding.Default;
}
}
static public Encoding RequestEncoding {
get {
- GlobalizationConfiguration gc = GlobalizationConfiguration.GetInstance (null);
- if (gc == null)
- return Encoding.Default;
-
- return gc.RequestEncoding;
+ return GlobalizationConfig != null ? GlobalizationConfig.RequestEncoding : Encoding.Default;
}
}
}