2011-02-03 116 views
0

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

[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的人告诉我,我的思路到目前为止是否正确?

谢谢!

回答

0

我已经写了类似的东西:

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

但在我的情况下,我有我发送一个自定义日志对象。响应格式只是告诉操作它将发回JSON。我不相信它会接受什么格式的数据。