0

まず、私は C# の初心者であり、プログラマーの習慣があまりありません。

Windows azure とコンソール アプリで同じクラスを使用したい。
たとえば、これは次のとおりです。

public static class Conversion
{
    public static void Convert(string fileName)
    {
        // ...
        if (error)
            Console.WriteLine("It is a error in Conversion.Convert(string).");
        // ...
        Console.WriteLine("Conversion success !");
    }
}

ただし、紺碧のコンソールでの表示はあまり役に立ちません。インターフェイスとその2つの実装を作成することを考えています。

public interface ILog
{
    void Write(string str);
    void WriteLinge(string str);
}

public static class LogAzure : ILog
{
    public static void WriteLine(string str)
    {
        Trace.WriteLine(str);
    }

}


public static class LogConsole : ILog
{
    public static void WriteLine(string str)
    {
        Console.WriteLine(str);
    }
}

したがって、私の変換メソッドでは、ILog.WriteLine() を使用する必要があります。

質問:
最初に、そしてより重要なことに、それは良いアイデア/実践ですか?

はいの場合:
自分が Azure にいるかどうかはどうやってわかりますか? ( RoleEnvironment.IsAvailable ??)
LogAzure または LogConsole の使用方法 (私のメソッドに引数を付けて?)

4

1 に答える 1

1

どちらの場合も Trace を使用する必要があります。ConsoleTraceListenerを使用するようにコンソール アプリを構成し、 Azure Diagnosticsを使用するように Azure バージョンを構成する

于 2012-06-28T13:38:44.490 に答える