通过WCF记录错误

时间:2011-02-03 14:03:32

标签: wcf

我正在尝试了解WCF。为了做到这一点,我想我会构建一个错误记录工具。此工具公开单个WCF服务。该服务有一个名为“LogError”的操作。 LogError接受三个参数:origin,message和stackTrace。我的方法签名如下所示:

[OperationContract]
[WebInvoke(UriTemplate = "/LogException/{origin}/{message}/{stackTrace}", ResponseFormat = WebMessageFormat.Json)]
public string LogException(string origin, string message, string stackTrace)
{
  // Save details to database
  return string.Empty;
}

请注意我正在学习WCF,所以我不确定我是否在这里使用最佳实践。但是,因为我正在写数据库,所以我认为POST方法最好。根据我的理解,WebInvoke最适合POST方法。我想使用JSON,因为我想从各种客户端应用程序中调用它,并且要快速。

我的问题是,到目前为止,我是否处于正确的轨道和理解线上?知道WCF的人能否告诉我,到目前为止我的思路是否正确?

谢谢!

1 个答案:

答案 0 :(得分:0)

我写了类似的东西:

    [WebHelp(Comment = "Add a log entry")]
    [WebInvoke(UriTemplate = "AddLogEntry", Method="POST", BodyStyle=WebMessageBodyStyle.Bare)]
    [OperationContract]
    public void AddLogEntry(LogEntry entry)
    {
        WriteEntry(entry);
    }

但在我的情况下,我有一个我要发送的自定义日志对象。响应格式只是告诉操作它将重新发送JSON。我不相信它会对它接受的数据格式产生任何影响。