2
我創建了一個公開REST服務的WCF Web服務應用程序。我希望此服務返回一個帶有數據和狀態部分的通用響應(請參閱下面的HttpResponse類)。 HttpResponse具有數據成員,它是對象列表。根據執行哪個REST服務調用,我將使用不同類型的對象列表填充數據。WCF REST服務 - 無法返回對象列表
我遇到的問題是,如果Data成員是對象列表,則Web服務崩潰。如果它使它成爲一個特定的類,我會得到一個有效的迴應。
我該如何解決這個問題?
謝謝!
public class HttpStatus
{
public int StatusCode = (int)StatusCodeEnum.SUCCESS;
public string UserMessage = "";
public string InternalMessage = "";
public string LinkedList = "";
}
public class HttpResponse
{
private List<object> _data { set; get; }
private HttpStatus _status { set; get; }
public HttpResponse()
{
_data = null;
_status = new HttpStatus();
}
public List<object> Data
{
get
{
return _data;
}
set
{
if (value != null) _data = value;
}
}
public HttpStatus Status
{
get
{
return _status;
}
set
{
if (value != null) _status = value;
}
}
}
[WebInvoke(
Method = "GET",
UriTemplate = "MyEntity",
ResponseFormat = WebMessageFormat.Json,
BodyStyle = WebMessageBodyStyle.Bare)]
[OperationContract]
HttpResponse GetAllEntities();
public HttpResponse GetAllEntities()
{
// Create Response
HttpResponse response = new HttpResponse();
try{
// Set the data
response.Data = GetMyEntities();
response.Status = 1;
}
catch(Exception ex)
{
Debug.WriteLine("Exception: "+ex.Message);
response.Status.StatusCode = (int)StatusCodeEnum.FAIL;
response.Status.InternalMessage = ex.Message;
response.Status.UserMessage = Constants.GENERIC_USER_ERROR;
}
return response;
}
可以使用泛型 – Nkosi