如题,在wcf 如何在server端将收到的message写入文件?、
我在网上找到的demo,是Nlog的一个例子,消息被莫名奇妙就打在console上了,求大神教我怎样让它不打在console上而是记录在文件里!!code:
static void Main(string[] args)
{
try
{
var uri = new Uri("http://localhost:5000/LogReceiver.svc");
var host = new ServiceHost(typeof(LogReceiverForwardingService), uri);
var binding = new BasicHttpBinding();
host.AddServiceEndpoint(typeof(ILogReceiverServer), binding, uri);
host.Open();
Console.WriteLine("Host opened.");
Console.ReadLine();
host.Close();
Console.WriteLine("Host closed.");
}
catch (Exception ex)
{
Console.WriteLine("ERROR: {0}", ex.ToString());
Console.ReadLine();
}
}
我在网上找到的demo,是Nlog的一个例子,消息被莫名奇妙就打在console上了,求大神教我怎样让它不打在console上而是记录在文件里!!code:
static void Main(string[] args)
{
try
{
var uri = new Uri("http://localhost:5000/LogReceiver.svc");
var host = new ServiceHost(typeof(LogReceiverForwardingService), uri);
var binding = new BasicHttpBinding();
host.AddServiceEndpoint(typeof(ILogReceiverServer), binding, uri);
host.Open();
Console.WriteLine("Host opened.");
Console.ReadLine();
host.Close();
Console.WriteLine("Host closed.");
}
catch (Exception ex)
{
Console.WriteLine("ERROR: {0}", ex.ToString());
Console.ReadLine();
}
}
2/// 写入日志文件
3/// </summary>
4/// <param name="input"></param>
5private void WriteLogFile(string input)
6{
7 /**////指定日志文件的目录
8 string fname = Server.MapPath("upedFile") + "//logfile.txt";
9 /**////定义文件信息对象
10 FileInfo finfo = new FileInfo(fname);
11
12 /**////判断文件是否存在以及是否大于2K
13 if ( finfo.Exists && finfo.Length > 2048 )
14 {
15 /**////删除该文件
16 finfo.Delete();
17 }
18 /**////创建只写文件流
19 using(FileStream fs = finfo.OpenWrite())
20 {
21 /**////根据上面创建的文件流创建写数据流
22 StreamWriter w = new StreamWriter(fs);
23
24 /**////设置写数据流的起始位置为文件流的末尾
25 w.BaseStream.Seek(0, SeekOrigin.End);
26
27 /**////写入“Log Entry : ”
28 w.Write("/nLog Entry : ");
29
30 /**////写入当前系统时间并换行
31 w.Write("{0} {1} /r/n", DateTime.Now.ToLongTimeString(),
32 DateTime.Now.ToLongDateString());
33
34 /**////写入日志内容并换行
35 w.Write(input + "/n");
36
37 /**////写入------------------------------------“并换行
38 w.Write("------------------------------------/n");
39
40 /**////清空缓冲区内容,并把缓冲区内容写入基础流
41 w.Flush();
42
43 /**////关闭写数据流
44 w.Close();
45 }
46}