第一,我知道 会堵塞, ,我不想要实现这一块。原因呢?我们不能维持项记录'框架'.

所以我的问题:

是否有可能实现 log4net 在Silverlight应用程序?什么我想要实现的是记录到的 孤立存.我知道,只有1MB的存储可用,但这种限制可以增加(用户必须接受这个的,我知道太)。通过这种方式,请不要我提供的替代品。我只想知道如果有人实现一个 log4net以孤立存.

有帮助吗?

解决方案

我无法想象,这是可能的。你将不得不下载log4net的来源,并尝试编译它针对Silverlight运行。我想这是可能的,以适应部分代码,使之建立在Silverlight,但听起来很多艰苦的工作。你可能关闭滚动自己的解决方案,或使用阻塞(哎呦)更好。

其他提示

下面是我做了什么..

using System.IO.IsolatedStorage;
using System.IO;

namespace Solution.Silverlight.Classes
{
    public static class Logging
    {
        public static void Log(string message, LOGLEVEL logLevel)
        {
            try
            {
                using (IsolatedStorageFile store = IsolatedStorageFile.GetUserStoreForApplication())
                {
                    using (Stream stream = new IsolatedStorageFileStream("Solution.Silverlight.log", FileMode.Append, FileAccess.Write, store))
                    {
                        StreamWriter writer = new StreamWriter(stream);
                        switch (logLevel)
                        {
                            case LOGLEVEL.INFO:
                                writer.Write(String.Format("{0:u} [INFO] {1}{2}", DateTime.Now, message,Environment.NewLine));
                                break;
                            case LOGLEVEL.WARNING:
                                writer.Write(String.Format("{0:u} [WARNING] {1}{2}", DateTime.Now, message, Environment.NewLine));
                                break;
                            case LOGLEVEL.ERROR:
                                writer.Write(String.Format("{0:u} [ERROR] {1}{2}", DateTime.Now, message, Environment.NewLine));
                                break;
                            case LOGLEVEL.FATAL:
                                writer.Write(String.Format("{0:u} [FATAL] {1}{2}", DateTime.Now, message, Environment.NewLine));
                                break;
                            default:
                                break;
                        }
                        writer.Close();
                    }
                }
            }
            catch (Exception ex)
            {
            }
        }
    }
}


public enum LOGLEVEL
{
    INFO,
    WARNING,
    ERROR,
    FATAL
}

记录应用程序块 Microsoft企图书馆5.0现在可以为力。看看 Silverlight一体化组 和相应的 演示.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top