Beispiel #1
0
        private void WriteXhtmlList(Mvc5RQ.Models.RQItemModel rqItemModel, Stream writeStream)
        {
            if (rqItemModel != null)
            {
                System.Xml.XmlTextReader r = rqItemModel.RQItems.ConvertTo("rqi", 1, 0);

                try
                {
                    var xTrf = new System.Xml.Xsl.XslCompiledTransform(true);
                    var xSet = new System.Xml.Xsl.XsltSettings(enableDocumentFunction: true, enableScript: true);

                    r.MoveToContent();
                    xTrf.Load(rqItemModel.RQItems.FormatPreprocessor.XmlTransformPath, xSet, new System.Xml.XmlUrlResolver());
                    xTrf.Transform(new System.Xml.XPath.XPathDocument(r), rqItemModel.RQItems.FormatPreprocessor.XslTransformArg, writeStream);
                }
                catch (Exception ex)
                {
                    //throw new NotImplementedException("Could not find a RiQuest item with requested document number.");
                    throw new HttpResponseException(JsonErrorResponse.Create(ex, "Add operation failed."));
                }
            }
        }
Beispiel #2
0
        private void WriteXmlList(Mvc5RQ.Models.RQItemModel rqItemModel, Stream writeStream)
        {
            if (rqItemModel != null)
            {
                var dSer = new DataContractSerializer(typeof(Mvc5RQ.Models.RQItemModel));

                try
                {
                    System.IO.MemoryStream ms = new System.IO.MemoryStream();
                    var xTrf = new System.Xml.Xsl.XslCompiledTransform();
                    var xSet = new System.Xml.Xsl.XsltSettings(enableDocumentFunction: true, enableScript: true);

                    dSer.WriteObject(ms, rqItemModel);
                    System.IO.TextReader tr = new System.IO.StringReader(System.Text.Encoding.UTF8.GetString(ms.GetBuffer(), 0, (int)ms.Position));
                    xTrf.Load(rqItemModel.RQItems.FormatPreprocessor.XmlTransformPath, xSet, new System.Xml.XmlUrlResolver());
                    xTrf.Transform(new System.Xml.XPath.XPathDocument(tr), rqItemModel.RQItems.FormatPreprocessor.XslTransformArg, writeStream);
                }
                catch
                {
                    throw new NotImplementedException("Could not find a RiQuest item with requested document number.");
                }
            }
        }
Beispiel #3
0
 private Task GetWriteTask(Stream writeStream, Mvc5RQ.Models.RQItemModel value)
 {
     return(new Task(() =>
                     WriteXhtmlList(value, writeStream)));
 }