首先,我是 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 !");
}
}
但是,在 azure 的控制台上显示并不是很有用。我想创建一个接口和它的 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 ?(对我的方法有论据?)