Esempio n. 1
0
 protected virtual void DoDownloadResponse(byte[] content, string documentName, CommonContentType contentType)
 {
     Response.ClearHeaders();
     Response.ClearContent();
     Response.AddHeader("Content-Disposition",
                        string.Format("attachment;filename=\"{0}\"", documentName));
     Response.AddHeader("Content-Length", content.Length.ToString());
     Response.ContentType = CommonContentAndFormatProvider.ConvertToMimeType(contentType);
     Response.BinaryWrite(content);
     Response.End();
 }
Esempio n. 2
0
        public virtual HttpResponseMessage Get([FromUri] QueryParameters parameters)
        {
            NamedOrAuthEndpointVisit visit = GetNamedOrAuthEndpointVisit(parameters);

            FormattedPaginatedContentRequest request = new FormattedPaginatedContentRequest();

            request.FlowName      = parameters.Dataflow;
            request.OperationName = parameters.Request;
            request.Paging        = new PaginationIndicator();
            request.Paging.Start  = parameters.RowId.HasValue ? parameters.RowId.Value : 0;
            request.Paging.Count  = parameters.MaxRows.HasValue ? parameters.MaxRows.Value : -1;
            request.Parameters    = parameters.ParseParams();
            request.ZipResults    = parameters.ZipResults;

            PaginatedContentResult resultSet = ServiceProvider.TransactionService.QueryEx(request, visit);

            if ((resultSet == null) || !resultSet.HasContent)
            {
                return(this.Request.CreateBadRequestResponse("No data was returned from the query."));
            }

            HttpResponseMessage responseMessage = new HttpResponseMessage();

            switch (resultSet.Content.Type)
            {
            case CommonContentType.XML:
            case CommonContentType.Flat:
            case CommonContentType.HTML:
                responseMessage.Content = new StringContent(resultSet.ConvertContentBytesToString());
                break;

            default:
                responseMessage.Content = new ByteArrayContent(resultSet.Content.Content);
                break;
            }

            responseMessage.Content.Headers.ContentType =
                new MediaTypeHeaderValue(CommonContentAndFormatProvider.ConvertToMimeType(resultSet.Content.Type));

            return(responseMessage);
        }