Пример #1
0
        public StreamResponseAction ExportSDMXQuery()
        {
            SessionQuery query = SessionQueryManager.GetSessionQuery(Session);

            //ControllerSupport CS = new ControllerSupport();
            //GetCodemapObject PostDataArrived = CS.GetPostData<GetCodemapObject>(this.Request);
            //PostDataArrived.Configuration.Locale = System.Threading.Thread.CurrentThread.CurrentCulture.TwoLetterISOLanguageName;

            string request = "";
            var    xdoc    = new XmlDocument();

            EndpointSettings DataObjConfiguration = new EndpointSettings();

            DataObjConfiguration = query._endpointSettings;


            //IGetSDMX GetSDMXObject = WebServiceSelector.GetSdmxImplementation(DataObjConfiguration);
            IGetSDMX       GetSDMXObject = (query._IGetSDMX == null) ? WebServiceSelector.GetSdmxImplementation(DataObjConfiguration) : query._IGetSDMX;
            BaseDataObject BDO           = new BaseDataObject(DataObjConfiguration, "appo.xml");

            ISdmxObjects         structure = query.Structure;
            IDataflowObject      df        = structure.Dataflows.First();
            IDataStructureObject kf        = structure.DataStructures.First();
            IDataQuery           sdmxQuery = BDO.CreateQueryBean(df, kf, query.GetCriteria());

            GetSDMXObject.GetSdmxQuery(sdmxQuery, out request);

            string filename = string.Format(CultureInfo.InvariantCulture, "{0}.{1}", query.Dataflow.Id, "xml");

            this.HttpContext.Response.Clear();
            this.HttpContext.Response.ContentType     = "text/xml";
            this.HttpContext.Response.ContentEncoding = Encoding.UTF8;
            string contentDisposition = string.Format(
                CultureInfo.InvariantCulture,
                Constants.AttachmentFilenameFormat,
                filename);

            this.HttpContext.Response.AddHeader(Constants.ContentDispositionHttpHeader, contentDisposition);



            this.HttpContext.Response.AddHeader("content-disposition", contentDisposition);
            this.HttpContext.Response.Write(request);
            this.HttpContext.Response.End();
            throw new NotImplementedException();
        }
Пример #2
0
        public StreamResponseAction ExportSDMXDataSet(string id, string sdmxVersion)
        {
            try
            {
                _iD = id;
                InitObject();
                SessionQuery query = SessionQueryManager.GetSessionQuery(Session);
                GetDataSet(_datasetRenderer, _dataStream, _textWriter, sdmxVersion, query);

                //var x = _dataStream.store;

                //Copy(query.GetSdmxMLDataSet(true), context.Response.Output);

                //SaveSDMXFile(_dataStream.structure, sdmxEnumType, GetFileName(_iD, "xml"));

                return(null);

                /*
                 * SessionQuery query = SessionQueryManager.GetSessionQuery(context.Session);
                 * if (query.GetSdmxMLDataSet(false) == null)
                 * {
                 *  SessionExpired(context);
                 *  return;
                 * }
                 *
                 * context.Response.ContentType = ContentType;
                 * context.Response.ContentEncoding = Encoding.UTF8;
                 *
                 * string contentDisposition = string.Format(
                 *  CultureInfo.InvariantCulture,
                 *  Constants.AttachmentFilenameFormat,
                 *  GetFileName(query.Dataflow, "dataset.xml"));
                 * context.Response.AddHeader(Constants.ContentDispositionHttpHeader, contentDisposition);
                 *
                 * ////            StreamReader sdmx = new StreamReader(query.GetSDMX_MLDataSet(true), Encoding.UTF8);
                 * Copy(query.GetSdmxMLDataSet(true), context.Response.Output);
                 */
            }
            catch (Exception ex)
            {
                return(new StreamResponseAction(ex.Message));
            }
        }
Пример #3
0
        public ActionResult SetLocale()
        {
            dynamic PostDataArrived = CS.GetPostData(this.Request);

            try
            {
                //LocaleResolver.RemoveCookie(HttpContext.ApplicationInstance.Context);

                CultureInfo c = Messages.SetLocale((string)PostDataArrived.locale);

                Thread.CurrentThread.CurrentUICulture = c;
                Thread.CurrentThread.CurrentCulture   = c;

                LocaleResolver.SendCookie(c, HttpContext.ApplicationInstance.Context);
                SessionQuery query = SessionQueryManager.GetSessionQuery(Session);
                query.CurrentCulture = c;

                return(CS.ReturnForJQuery(new JavaScriptSerializer().Serialize(string.Empty)));
            }
            catch (Exception)
            {
                return(CS.ReturnForJQuery(ControllerSupport.ErrorOccured));
            }
        }