[Mono-dev] HttpRuntime.Cache crashing HttpListener in console application
MemphisWeb
memphisweb at gmail.com
Wed Apr 1 12:46:08 EDT 2009
If I Cache data using System.Web.Caching in a console application I get an
exception if I ltry to start a HttpListener object. It seems that somewhere
in System.Net it is looking for Cache Settings in a web.config.
This is a bug because the behavior does not exist in the .net runtime.
Is there a workaround?
############################
using System;
using System.Web;
using System.Web.Caching;
using System.Net;
namespace TestWeb
{
class MainClass
{
public static void Main(string[] args)
{
/* Uncomment to section to produce error
*
Cache cache = HttpRuntime.Cache;
cache["hello"] = "world";
Console.WriteLine("Hello World!");
Cache cacheClone = HttpRuntime.Cache;
string s = cacheClone["hello"] as String;
Console.Write(s);
*/
System.Net.HttpListener listener = new System.Net.HttpListener();
listener.Prefixes.Add("http://192.168.1.101:8081/");
listener.Start();
Console.WriteLine(listener.IsListening);
}
}
}
Hello World!
world
Unhandled Exception: System.TypeInitializationException: An exception was
thrown by the type initializer for System.Net.Sockets.Socket --->
System.NullReferenceException: Object reference not set to an instance of an
object
at System.Web.Configuration.WebConfigurationManager.GetSectionCacheKey
(System.String sectionName, System.String path) [0x00000] in
/usr/src/packages/BUILD/mono-2.4/mcs/class/System.Web/System.Web.Configuration_2.0/WebConfigurationManager.cs:487
at System.Web.Configuration.WebConfigurationManager.GetSection
(System.String sectionName, System.String path) [0x00000] in
/usr/src/packages/BUILD/mono-2.4/mcs/class/System.Web/System.Web.Configuration_2.0/WebConfigurationManager.cs:313
at System.Web.Configuration.WebConfigurationManager.GetSection
(System.String sectionName) [0x00000] in
/usr/src/packages/BUILD/mono-2.4/mcs/class/System.Web/System.Web.Configuration_2.0/WebConfigurationManager.cs:308
at
System.Web.Configuration.HttpConfigurationSystem.System.Configuration.Internal.IInternalConfigSystem.GetSection
(System.String configKey) [0x00000] in
/usr/src/packages/BUILD/mono-2.4/mcs/class/System.Web/System.Web/UplevelHelper.cs:1
at System.Configuration.ConfigurationManager.GetSection (System.String
sectionName) [0x00000] in
/usr/src/packages/BUILD/mono-2.4/mcs/class/System.Configuration/System.Configuration/ConfigurationManager.cs:162
at System.Net.Sockets.Socket.CheckProtocolSupport () [0x0003c] in
/usr/src/packages/BUILD/mono-2.4/mcs/class/System/System.Net.Sockets/Socket.cs:1342
at System.Net.Sockets.Socket..cctor () [0x0000c] in
/usr/src/packages/BUILD/mono-2.4/mcs/class/System/System.Net.Sockets/Socket.cs:601
--- End of inner exception stack trace ---
at System.Net.EndPointListener..ctor (System.Net.IPAddress addr, Int32
port, Boolean secure) [0x00028] in
/usr/src/packages/BUILD/mono-2.4/mcs/class/System/System.Net/EndPointListener.cs:58
at System.Net.EndPointManager.GetEPListener (System.Net.IPAddress addr,
Int32 port, System.Net.HttpListener listener, Boolean secure) [0x00064] in
/usr/src/packages/BUILD/mono-2.4/mcs/class/System/System.Net/EndPointManager.cs:96
at System.Net.EndPointManager.AddPrefixInternal (System.String p,
System.Net.HttpListener listener) [0x00050] in
/usr/src/packages/BUILD/mono-2.4/mcs/class/System/System.Net/EndPointManager.cs:78
at System.Net.EndPointManager.AddListener (System.Net.HttpListener
listener) [0x0002a] in
/usr/src/packages/BUILD/mono-2.4/mcs/class/System/System.Net/EndPointManager.cs:49
--
View this message in context: http://www.nabble.com/HttpRuntime.Cache-crashing-HttpListener-in-console-application-tp22830802p22830802.html
Sent from the Mono - Dev mailing list archive at Nabble.com.
More information about the Mono-devel-list
mailing list